-
Die
vorliegende Erfindung betrifft eine Schnittstelle und ein Verfahren
zur Verbindung von Datenspeicherlaufwerken und einer Steuervorrichtung.
Die vorliegende Erfindung betrifft im besonderen eine Datenübertragungsschnittstelle
zur Übertragung
von Daten von/zu miteinander verbundenen Datenspeicherlaufwerken.
-
Datenschnittstellen
ermöglichen
einer zentralen Vorrichtung, wie einem Computersystem, Informationen
von einem Datenspeicherlaufwerk, wie einer Festplatte oder einem
optischen Speichermedium, zu senden und zu empfangen. Zur Verbindung solcher
Zusatzlaufwerke an eine Zentrale ist der ATA (AT-Attachment) Bus
des ursprünglichen
IMB/AT PCs noch immer sehr gebräuchlich.
Der ATA Busstandard wurde zu der AT Attachment Paket Schnittstelle
(ATAPI) erweitert und wird seither als ATA/ATAPI bezeichnet. Durch
die ATA/ATAPI wird eine Schnittstellenerweiterung, die eine Verbindung
von externen Geräten
an Computersysteme, im besonderen Personalcomputer, ermöglicht.
-
Der
ATA/ATAPI-Standard definiert einen Satz von Registern, die von den
Zusatzgeräten
und dem Zentralcomputer für
die Datenübertragung
verwendet werden. Dieser Satz von Registern wird als Taskfile bezeichnet.
Zusatzgeräte
erfordern gerätespezifische
Steuerinformationen, wie einen Sektor, eine Spurnummer, oder eine
Kopf-ID für
die Suche der Positionsinformationen eines Lese-/Schreibkopfs. Diese
Informationen werden einzeln Übertragen
und in ein Register des Zusatzgeräts geschrieben.
-
Ein
Datenübertragungsablauf
mit einem Zusatzgeräts,
das ATA/ATAPI verwendet, durchläuft mehrere
Phasen. Der Zentralcomputer schreibt während einer Anweisungsphase
zusätzlich
eine Anweisung in einen Anweisungsregister des ATA/ATAPI. Danach
wird in die Datenphase eingetreten, in der Daten von/zu dem Zusatzgerät übertragen
werden.
-
US-A-5
898 891 beschreibt eine direkte Datenübertragung zwischen zwei Speicherlaufwerken, zum
Beispiel Festplatten. Hierzu wird ein EIDE-Controller an einen primären und
einen sekundären IDE-Kanal
angeschlossen, um die Speicherlaufwerke anzuschließen. Die
von den Speicherlaufwerken zu lesenden und zu schreibenden Daten
werden in einem Lesepuffer oder einem Schreibpuffer gepuffert. Um
die Datenübertragung
von dem ersten Speicherlaufwerke zu einem anderen zu beschleunigen, können die
Daten, die in dem Lesepuffer gespeichert sind, direkt zu dem Schreibpuffer
geleitet werden Wenn Daten zwischen zwei an eine Zentrale angeschlossenen
Zusatzgeräten
kopiert werden, werden die Daten zunächst von einem der Zusatzgeräte gelesen,
an die Zentrale übertragen
und schließlich
zu dem zweiten Zusatzgeräts übertragen
und geschrieben. Solch eine Verarbeitung ist zeitaufwändig, besonders
wenn große
Datenmengen kopiert werden.
-
Im
Hinblick auf diesen Nachteil beabsichtigt die vorliegende Erfindung
die erforderliche Zeit zu reduzieren und ein Verfahren zu Datenübertragung zwischen
Datenspeicherlaufwerken und eine Datenübertragungsschnittstelle bereitzustellen.
-
Dies
wird durch die Merkmale der unabhängigen Patentansprüche erreicht.
-
Es
ist der besondere Ansatz der vorliegende Erfindung, dass die herkömmlich nacheinander
ausgeführten
Lese- und Schreiboperationen einer Datenübertragungsschnittstelle gleichzeitig
ausgeführt werden
können.
Auf diese Weise wird die Zeit, die für das Kopieren von Daten zwischen
zwei Datenspeicherlaufwerken erforderlich ist, reduziert. Aufgrund der
gleichzeitig ausgeführten
Verarbeitungen können Unterbrechungen
in der Verarbeitung eines kontinuierlichen Lesens von Daten von
dem ersten Speicherlaufwerk durch Schreibzyklen, die Daten zu den zweiten
Datenspeicherlaufwerk schreiben, vermieden werden. Durch Bereitstellung
eines Speichers, können
die Daten, die von dem ersten Datenspeicherlaufwerk gelesen werden,
gepuffert werden. Während
die zuvor gelesenen Daten zu dem zweiten Datenspeicherlaufwerk geschrieben
werden, wird der nächste
Datenblock bereits zur gleichen Zeit ausgelesen und in dem Speicher
gespeichert.
-
Vorzugsweise
ist die Zeit, die für
das Schreiben eines Datenblocks benötigt wird kürzer als die Zeit, die für das Lesen
eines Datenblocks erforderlich ist. Folglich können die Daten von dem ersten
Datenspeicherlaufwerk kontinuierlich ausgelesen werden und eine
maximale Zeitersparnis wird erreicht.
-
Gemäß eines
bevorzugten Ausführungsbeispiels
ist das erste Datenspeicherlaufwerk ein optisches Laufwerk und das
zweite Datenspeicherlaufwerk ist eine Festplatte. Solch eine Laufwerkskombination
ermöglicht
eine effiziente Datenübertragung. Besonders
ROM-Daten besitzen
eine größere Zugriffszeit
im Vergleich zu einem wiederbeschreibbaren Speichermedium mit einer
kürzeren
Zugriffszeit. Die beschleunigte Kopie die aus dieser Verarbeitung hervorgeht
ermöglicht
die Verwendung von optischen Speichermedien, die eine große Datenmenge
bereitstellen, wie Update-Informationen, die für einen einfachen Zugriff durch
das Datenverarbeitungssystem, auf eine Festplatte übertragen
werden können.
-
Vorzugsweise
werden die Lese- und Schreiboperation durch eine Look-ahead-Funktionalität in dem
ersten Datenspeicherlaufwerk durchgeführt. Die Look-ahead-Funktionalität kann durch
Anwendung einer Mehrzahl von konventionell verfügbaren Laufwerken, die die
erforderlichen Speicher und Funktionalitäten bereitstellen, implementiert
werden.
-
Vorzugsweise
stelle die Datenblöcke
Video-, Audio-, Navigations- und andere Daten dar, die normalerweise
eine große
Speicherkapazität
erfordern. Die Verwendung solcher Daten und die Verteilung durch
optische Speichermedien kann durch die Anwendung der vorliegende
Erfindung ermöglicht
werden. Eine Verarbeitung zum Kopieren von Daten zur Integration
der Daten eines ersten Datenspeichermediums in eine Datenverarbeitung
kann gemäß der vorliegenden
Erfindung auf einfache Weise ermöglicht
werden.
-
Weitere
Ausführungsbeispiels
der vorliegenden Erfindung den Gegenstand der abhängigen Patentansprüche.
-
Zusätzliche
Merkmale und Vorteile der vorliegende Erfindung werden aus der folgenden
Beschreibung der Erfindung, wie in den Abbildungen dargestellt,
erkennbar, wobei:
-
1 stellt
schematisch eine „Einkanal"-Datenverbindung
von zwei Datenspeicherlaufwerken an ein zentrales Gerät dar;
-
2 stellt
schematisch einzelne Verbindungen von zwei Datenspeicherlaufwerken
an ein zentrales Gerät
dar;
-
3 ist
ein Flussdiagramm, das ein herkömmliches
Verfahren zur Übertragung
von Daten von einem erstens zu einen zweiten Datenspeicherlaufwerk
beschreibt;
-
4 ist
eine Zeitdiagramm, das einen herkömmlichen Kopieprozess darstellt;
-
5 ist
eine Zeitdiagramm, das die Kopieverarbeitung gemäß der vorliegenden Erfindung
darstellt; und
-
6 ist
ein Flussdiagramm, das die Kopierverarbeitung von Daten gemäß der vorliegenden
Erfindung darstellt.
-
In 1 ist
eine Einkanaldatenübertragungsschnittstelle
dargestellt, die zwei Datenspeicherlaufwerke 110, 120 verbindet.
Die beiden Datenspeicherlaufwerke 110 und 120 teilen
sich einen einzigen Anschluss des Zentralrechners oder der Steuervorrichtung 130.
Eine Mehrzahl von Datenleitungen 140, eine Mehrzahl von
Steuerleitungen 150 und Lese-/Schreibleitungen verbinden
jeweils die beiden Datenspeicherlaufwerken 110, 120 mit
dem Zentralrechner 130. Wenn ein bestimmtes Identifikationsbit in
einem Laufwerk/Register ausgewählt
wird, das in jedem der Datenspeicherlaufwerke 110, 120 bereitgestellt
wird, wird eines der Datenspeicherlaufwerke 110, 120 für das Ausführen eine
Lese- und Schreiboperation ausgewählt.
-
Eine
alternative Ausführung
für das
Verbinden von zwei Datenspeicherlaufwerken 110, 120 mit einem
einzelnen Zentralrechner 130 ist in 2 dargestellt.
Die beiden Datenspeicherlaufwerke 110, 120 sind
mit dem Zentralrechner 130 durch einzelne Datenleitungen 240, 250,
einzelne Datensteuerleitungen 242, 252 und einzelne
Lese/Schreibanweisungsleitungen 244, 254 verbunden.
-
Während die
Anordnung der Datenschnittstelle von 1 es nur
einem einzelnen Datenspeicherlaufwerken 110, 120 gleichzeitig
ermöglicht
Daten mit dem Zentralrechner 130 auszutauschen, ermöglicht die
in 2 dargestellte Anordnung eine gleichzeitige Kommunikation
beider Datenspeicherlaufwerke 110, 120 mit dem
Zentralrechner 130.
-
Die
Datenspeicherlaufwerke können
alle Arten von Speichermedien, wie optische Laufwerke, Festplatten,
Diskettenlaufwerke, Flashspeicher oder Chipspeicher sein. Die Typen
der Zusatzgeräte,
die an die Datenübertragungsschnittstelle
angeschlossen werden, ist nicht auf die explizit erwähnten Datenspeichervorrichtungen
beschränkt.
-
In 3 ist
die herkömmliche
Verarbeitung für
das Kopieren von Daten zwischen zwei Datenspeicherlaufwerken dargestellt.
Zuerst wird ein Datenblock von einem ersten Datenspeichermedium (Schritt 310)
gelesen. Der gelesene Datenblock wird zu dem Zentralrechner übertragen
und dann zwischengespeichert (Schritt 320). Wenn der Empfang der
Daten (Schritte 310, 320) abgeschlossen ist, wird das
Schreiben der Daten in Schritt 330 gestartet. Die zwischengespeicherten
Daten werden zu dem zweiten Datenspeicherlaufwerk übertragen
und darin auf ein Datenspeichermedium geschrieben.
-
Die
Daten werden auf beiden Speichermedien in Form einer Mehrzahl von
Datenblöcken
gespeichert, die einzelnen zwischen beiden Laufwerken kopiert werden.
Somit werden die Schritte 310, 320 und 330 wiederholt
ausgeführt,
um alle gewünschten
Daten zu übertragen.
Daher kehrt die Verarbeitung nach Abschluss von Schritt 330 zu
Schritt 310 zurück,
um mit dem nächsten
Block zu beginnen.
-
Der
Ablauf der Verarbeitungsschritte bezüglich der Zeit, die für das Kopieren
der Daten erforderlich sind ist in 4 dargestellt.
Nachdem ein erster Datenblock während
der Zeitperiode 410 gelesen wird, werden die erhaltenen
Daten während
der Zeitperiode 415 auf das zweite Speichermedium geschrieben.
Entsprechend werden die Daten von Block 2 während der
Zeitperiode 420 gelesen und während einer Zeitperiode 425 geschrieben.
-
Die
Zeitdauer, die für
das Übertragen
eines einzelnen Datenblocks von einem ersten Datenspeichermedium
zu einem zweiten Datenspeichermedium erforderlich ist, entspricht
der Summe der Lesezeitperiode 410 und der Schreibzeitperiode 415.
-
Im
Gegensatz dazu zeigt 5 das Zeitdiagramm für eine Kopieverarbeitung
gemäß der vorliegenden
Erfindung. Die Lese- und Schreiboperationen, die konventionell nacheinander
ausgeführt
werden, werden nun parallel durchgeführt. Nachdem die Daten eines
ersten Blocks 510 erhalten wurden, werden die Daten zu
dem zweiten Datenspeichermedium während der Zeitperiode 512 übertragen
und darauf während
einer Zeitperiode 514 geschrieben. Wenn das Lesen 510 der
Daten des ersten Blocks abgeschlossen ist, wird das Lesen mit dem
Lesen 512 von Daten des zweiten Blocks fortgesetzt. Die Lese-
und Schreibverarbeitung für
jeden einzelnen Block sind so versetzt angeordnet, dass jeder Block nur
dann geschrieben wird, nachdem die Leseverarbeitung für den entsprechenden
Block abgeschlossen ist.
-
Die
parallelen Lese- und Schreiboperationen werden durch Verwendung
eines Zwischenspeichers zur Pufferung der gelesenen Daten ermöglicht.
Der Zwischenspeicher befindet sich in dem ersten Datenspeicherlaufwerk.
Obwohl die Datenübertragung
zwischen dem Zentralrechner und den angeschlossenen Laufwerk nur
mit einem Datenspeicherlaufwerk gleichzeitig möglich ist, kann die Lese- und
Schreibverarbeitung gleichzeitig ausgeführt werden. Die gelesenen Daten
werden in dem ersten Datenspeicherlaufwerk 110 gepuffert,
während
die Steuereinheit oder der Zentralrechner 130 die Daten
von den Zwischenspeicher des ersten Datenspeicherlaufwerks zu dem
zweiten Datenspeicherlaufwerk, das angewiesen wird die empfangenen
Daten auf ein Speichermedium zu schreiben, überträgt.
-
Durch
Bereitstellung eines Zwischenspeichers in dem ersten Datenspeicherlaufwerk 110 kann das
Laufwerk die darin gespeicherten Daten kontinuierlich lesen. Dies
wird durch Anwenden einer Look-ahead-Funktionalität erreicht.
Diese Funktionalität
liest bereits den nächsten
Datenblock und ermöglicht
so eine Beschleunigung der erforderlichen Lesezeit 510.
-
Eine
besondere Optimierung des Datenaustausch kann erreicht werden, wenn
ein Datenspeicherlaufwerke mit einer langsamen Zugriffszeit, zum Beispiel
ein DVD-Laufwerk, und ein Ziellaufwerk mit einer kurzen Zugriffszeit,
zum Beispiel eine Festplatte, als zweites Datenspeicherlaufwerk
verwendet werden. Da die Zeit für
das Schreiben eines erhaltenen Datenblocks auf eine Festplatte vergleichsweise kurz
ist in Bezug auf die Zeit, die für
das Lesen des entsprechenden Datenblocks benötigt wird, wird ein kontinuierliches
Lesen von Datenblöcken
erreicht, und die erforderliche Zeit für das Kopieren von großer Datenmengen
zwischen beiden Laufwerken wird beachtlich reduziert.
-
6 stellt
die einzelnen Schritte dar, die während eines Kopiervorgangs
von Daten gemäß der vorliegenden
Erfindung ausgeführt
werden. Die Verarbeitungsschritte von 6 sind bezüglich einer Zeitachse 600 angeordnet,
um die aufeinander folgenden und parallelen Beziehungen der Verarbeitungsschritte
von aufeinander folgenden Datenblöcken widerzuspiegeln.
-
Zunächst wird
ein Block n von einem ersten Datenspeicherlaufwerk gelesen und dann
gespeichert (Schritt 612). Nachdem das Lesen und Speichern
des Blocks n abgeschlossen ist, wird durch die Steuervorrichtung
eine Datenübertragung
angefragt, und der ge speicherte Datenblock wird entsprechend an
den Zentralrechner übertragen
(Schritt 614). Der Zentralrechner überträgt dann den erhaltenen Datenblock
zu dem Ziellaufwerke (Schritt 614). Während das erste Datenspeicherlaufwerk
bereits den nachfolgenden Block n+1 ausliest und speichert (Schritt 622).
-
Die
zu dem zweiten Datenspeicherlaufwerk übertragenen Daten werden auf
einem darin enthaltenen Speichermedium geschrieben (Schritt 616).
-
Abhängig von
den jeweiligen Übertragungsgeschwindigkeiten
der Datenspeicherlaufwerke kann das Lesen und Speichern der Daten
von Block n+1 bereits abgeschlossen sein bevor alle Daten des vorhergehenden
Blocks n auf dem zweiten Datenspeicherlaufwerk geschrieben sind.
Unter diesen Umständen
tritt eine kurze Unterbrechung in dem Lesevorgang auf.
-
Nachdem
das Schreiben der Daten abgeschlossen ist, wird der nachfolgende
Block n+1 (der bereits vor dem ersten Datenspeicherlaufwerk gelesen
wurde) von der Steuervorrichtung 130 angefordert und zu
dem Zwischenspeicher übertragen (Schritte 614, 624).
-
Zusammenfassend
beschleunigt die vorliegende Erfindung einer Datenübertragung
zwischen zwei Datenspeicherlaufwerken, in dem Lese- und Schreiboperationen
gleichzeitig ausgeführt
werden. Dies wird ermöglicht,
indem die gelesenen Daten in einem Zwischenspeicher, der in dem
ersten Datenspeicherlaufwerke (Quelllaufwerk) enthalten ist, gepuffert
werden, während
die zuvor gelesenen Daten übertragen
und in das zweiten Datenspeicherlaufwerk (Ziellaufwerk) geschrieben
werden.