-
Technisches Gebiet
-
Die vorliegende Erfindung betrifft Datenspeichervorrichtungen und insbesondere Datenspeichervorrichtungen mit physikalischen Datenspeicherstellen in enger Nähe zu weit unterschiedlichen Arten des Datenschreibens.
-
Hintergrund
-
Datenspeichervorrichtungen verwenden rotierende Datenspeichermedien wie beispielsweise Festplattenlaufwerke. In einem Festplattenlaufwerk werden Daten unter Verwendung eines Schreibkopfes zum Plattenmedium geschrieben, der ein sehr begrenztes Magnetfeld erzeugt, das Magnetbereiche in der Platte in einer von zwei Richtungen ausrichtet. In einigen Fällen liegt die Magnetisierungsrichtung aufwärts oder abwärts zur Ebene der Platte (lotrechte Magnetaufzeichnung oder PMR (Perpendicular Magnetic Recording). In anderen Fällen liegt die Magnetisierungsrichtung innerhalb der Ebene der Platte. In allen Fällen können diese Daten dann mit einem Lesekopf ausgelesen werden. Die Schreib- und Leseköpfe sind typischerweise in einer einzelnen Baugruppe integriert. Um ständig zunehmende Datenspeicherdichten (typischerweise in Bit/Zoll2 gemessen) zu erreichen, die nunmehr Höhen in der Nähe von 1012 Bit/Zoll2 erreichen, sind die Größen von einzelbitspeichernden Magnetgebieten auf nm-Stufen verringert worden.
-
Um diese zunehmenden Datenspeicherdichten zu erreichen, werden die Abmessungen (Breiten) von Datenspuren ständig verringert und die Spur-Spur-Abstände sind ebenfalls entsprechend verringert worden, mit dem Ergebnis, dass Magnetstörwirkungen zwischen Nachbarspuren (Nebenspursstörung, ATI (Adjacent Track Interference) und nahe gelegenen Spuren (Fernspurstörung, FTI (Far Track Interference) zu einem zunehmenden Problem für die Unterhaltung von Datenintegrität werden. Die gegenwärtige Lösung dieses Problems ist, die Gesamtzahl von Aufschreibungen auf jeder gegebenen Spur zu überwachen und in Ruhezeit (d. h. in Zeiten, während denen der Host-Computer keine Lese- oder Schreibbefehle zum HDD überträgt) eine Hintergrund-Medienabtastung auszuführen. Während der Hintergrund-Medienabtastung werden niedrigere Stufen zur Korrektur (d. h. weniger Fehlerkorrekturcodebit) benutzt – wenn die Spur gelesen werden kann, aber kompromittiert ist, wird sie aufgefrischt (d. h. die gleichen Daten werden in die gleiche physikalische Stelle auf dem Plattenmedium wieder geschrieben). Die für diese Datenauslesung- und Neuschreibungsoperationen erforderliche Zeit kann die Gesamtleistung des HDD beeinflussen und ist unerwünscht.
-
Es wäre daher vorteilhaften in einem Datenspeichersystem, ein Verfahren zur verbesserten Steuerung von AT- und FTI-Wirkungen mit verringertem Aufwand im HDD-Betrieb bereitzustellen und dadurch die Gesamtleistung des HDD zu verbessern.
-
Auch wäre es vorteilhaft, ein Verfahren zum Vermeiden von ATI- und FTI-Wirkungen auf Datenblöcken bereitzustellen und dadurch die Notwendigkeit, die gleichen Daten in diese Datenblöcke wieder zu schreiben zu verringern oder zu beseitigen, mit entsprechendem Aufwand im HDD-Betrieb.
-
Ein weiterer Vorteil wäre die Bereitstellung eines Verfahrens zum Neuabbilden logischer Blockadressen (LBA) aus einer physikalischen Datenstelle zu einer anderen physikalischen Datenstelle, um eine Verringerung von „Hotspots” auf dem Datenspeichermedium zu bewirken, an denen sehr hohe und fortlaufende Datenschreibraten auftreten.
-
Kurzdarstellung
-
Einige Ausführungsformen bieten Verfahren zur verbesserten Datenspeicherung (lesen und schreiben) in einem Festplattenlaufwerk oder sonstiger Datenspeichervorrichtung mit Datenspeicherungsstellen in enger Nähe zueinander und mit weit unterschiedlichen Datenschreibraten. Die enge Nähe dieser Speicherstellen kann Magnetstörwirkungen bewirken (Nebenspurstörung, ATI oder Fernspurstörung, FTI), die Verringerungen in der Magnetisierung von Datenbit und infolgedessen eine Notwendigkeit, mehr Fehlerkorrekturcodebit während der Datenauslesung zu benutzen, verursachen. Wenn höhere Anzahlen von Fehlerbit erforderlich sind, wird der Datendecodieralgorithmus langsamer sein, was zu einer Verringerung der HDD-Ausleseleistung führt.
-
Andere Ausführungsformen bieten ein Verfahren zur verbesserten Kontrolle von ATI- und FTI-Wirkungen mit verringertem Zusatzaufwand im HDD-Betrieb, wodurch die Gesamtleistung des HDD verbessert wird.
-
Einige Ausführungsformen bieten ein Verfahren zum Vermeiden oder bedeutendem Verringern von ATI- und FTI-Wirkungen an Datenblöcken, wodurch die Notwendigkeit zum Neuschreiben der gleichen Daten in diese Datenblöcke verringert oder beseitigt wird, mit entsprechendem Aufwand im HDD-Betrieb.
-
Noch weitere Ausführungsformen bieten ein Verfahren zum Wiederabbilden von logischen Blockadressen (LBA) von einer physikalischen Datenstelle zu einer anderen physikalischen Datenstelle zum Bewirken einer Verringerung von „Hotspots” auf dem Plattenspeichermedium, an denen sehr hohe und fortlaufende Datenschreibraten stattfinden.
-
Kurze Beschreibung der Zeichnungen
-
1 ist ein Schaltbild einer Ausführungsform eines Datenspeichersystems;
-
2 ist ein Schaltbild eines Schreibvorgangs auf einem die vorliegende Erfindung nicht ausführenden Festplattenlaufwerk, das die teilweise Löschung von Daten aufgrund von Nebenspurstörung (ATI) darstellt;
-
3 ist ein Schaltbild eines verbesserten Schreibvorgangs nach einer Ausführungsform der Erfindung mit kleineren Datenblöcken;
-
4 ist ein Schaltbild eines verbesserten Schreibvorgangs nach einer Ausführungsform der Erfindung mit kleineren Datenblöcken und doppelseitigen ATI-Verdichtungen;
-
5A ist ein Schaltbild eines Schreibvorgangs in Abhängigkeit der vorliegenden Erfindung, das vorbestehende Daten zeigt;
-
5B ist ein Schaltbild eines Schreibvorgangs in Abhängigkeit der vorliegenden Erfindung, das ATI-Wirkungen an den vorbestehenden Daten zeigt;
-
6 ist ein Schaltbild eines verbesserten Schreibvorgangs nach einer Ausführungsform der Erfindung, das vorbestehende Daten zeigt;
-
7 ist ein Schaltbild eines verbesserten Schreibvorgangs nach einer Ausführungsform der Erfindung, das minimierte ATI-Wirkungen an den vorbestehenden Daten zeigt;
-
8 ist ein Schaltbild eines verbesserten Schreibvorgangs aus 7, das minimierte ATI-Wirkungen an den vorbestehenden Daten zeigt;
-
9 ist ein Schaltbild eines verbesserten Schreibvorgangs aus 8, das minimierte ATI-Wirkungen an den vorbestehenden Daten zeigt.
-
Ausführliche Beschreibung
-
Ausführungsformen können einen oder mehrere Vorteile gegenüber vorherigen Verfahren zum Verringern des Datenflusses aufgrund von Nebenspurstörung (ATI – Adjacent Track Interference) bieten. Einige Gewinne können auch zum Verringern der Wirkungen von Fernspurstörung (FTI – Far Track Interference) benutzt werden. Nicht alle Ausführungsformen können alle Vorteile bieten. Die Ausführungsformen werden hinsichtlich dieser Vorteile beschrieben, aber diese Ausführungsformen sollen nicht begrenzend sein. Verschiedene Abänderungen, Alternativen und Entsprechungen fallen in den Sinn und Schutzbereich der hiesigen Ausführungsformen und wie sie in den Ansprüchen definiert sind.
-
Datenspeichersystem
-
1 ist ein Schaltbild einer Ausführungsform eines Datenspeichersystems 100. System 100 umfasst einen Host-Computer 102, eine Speichervorrichtung 104, wie beispielsweise ein Festplattenlaufwerk, und eine Schnittstelle 106 zwischen dem Host-Computer 102 und der Speichervorrichtung 104. Host-Computer 102 enthält einen Prozessor 108, ein Host-Betriebssystem (BS) 110, und Steuerungscode 112. Die Speichervorrichtung oder das Festplattenlaufwerk 104 umfasst an einen Datenkanal 116 angekoppelte Steuerung 114. Die Speichervorrichtung 104 umfasst einen einen Schreib-/Lesekopf mit einem Leseelement 120 und einem Schreibelement 122 tragenden Arm 118.
-
Im Betrieb sendet das Host-Betriebssystem 110 im Host-Computer 102 Befehle zur Speichervorrichtung 104. Als Reaktion auf diese Befehle werden von der Speichervorrichtung 104 angeforderte Funktionen wie beispielsweise Lesen, Schreiben und Löschen von Daten auf der Plattenoberfläche 124 durchgeführt. Die Steuerung 114 veranlasst das Schreibelement 122 zum Aufzeichnen von Magnetmustern von Daten auf einer beschreibbaren Oberfläche der Platte 124 in Spuren 128. Die Steuerung 114 positioniert den Lesekopf 120 und Schreibkopf 122 über der beschreibbaren Oberfläche 124 der Platte 126 durch Schließen eines Regelkreises in vorbestimmten Servopositionierungs-Burstmustern typischerweise angeordnet in Servospeichen oder Zonen. Das vorbestimmte Servopositionierungsmuster kann ein Vorspannfeld, ein Servo-Sync-Mark-(SSM-)Feld, ein Spur-/Sektoridentifizierungs-(ID-)Feld, eine Vielzahl von Positionsfehlersignal-(PES – Position Error Signal)Feldern und eine Vielzahl von wiederholbaren Auslauf-(RRO – Repeatable Run Out)Feldern nach den Burstfeldern umfassen.
-
Nach einigen Ausführungsformen der Erfindung umfasst das System 100 einen Cache-Speicher 130, zum Beispiel ausgeführt mit einem oder mehreren von: einem Flash-Speicher, einem dynamischen Direktzugriffsspeicher (DRAM – Dynamic Random Access Memory) oder einem statischen Direktzugriffsspeicher (SRAM).
-
System 100 mit dem Host-Computer 102 und der Speichervorrichtung oder dem Festplattenlaufwerk 104 ist in einer zum Verständnis ausreichenden vereinfachten Form dargestellt. Der gezeigte Host-Computer 102 zusammen mit der Speichervorrichtung oder dem Festplattenlaufwerk 104 sollen keine architektonischen oder funktionsmäßigen Begrenzungen bedeuten. Die vorliegende Erfindung kann mit verschiedenen Hardware-Ausführungen und -Systemen und verschiedenen sonstigen internen Hardwarevorrichtungen benutzt werden.
-
Benennung in den Schaltbildern von Fig. 2 bis Fig. 9
-
2 bis 9 sind Schaltbilder verschiedener Schreibvorgänge in Abwesenheit sowie Gegenwart von Ausführungsformen der vorliegenden Erfindung. In diesen Figuren ist eine Standardbenennung zum Erleichtern des Verständnisses der verschiedenen Vorteile von Datenschreibvorgängen, und wie sich diese verbesserten Schreibvorgänge von vorher eingesetzten Schreibvorgängen unterscheiden, eingesetzt worden. In 2–9 sind Speicherspuren auf einer Festplattenlaufwerkdatenspeichervorrichtung durch horizontale Rechtecke dargestellt, wie beispielsweise Spuren 201, 202 und 203 in 2 oder Spuren 601–613 in 6–9. Ganz links von diesen Spurdarstellungsrechtecken sind Spurnummern wie beispielsweise „1” für Spur 201, und „2” für Spur 202 in 2 gezeigt. In gegenwärtigen Festplattenlaufwerken kann die Anzahl von Spuren bis in die Hunderttausende reichen (z. B. 300000), wobei jede Spur wenigstens Hunderte von Sektoren umfassen kann (in einigen Fällen bis zu 1000), und wobei jeder Sektor bis zu 4 kB von Daten oder mehr enthalten kann. Einzelheiten der Anzahl von Spuren, Sektoren und Byte in Sektoren sind nicht Teil der vorliegenden Erfindung. In 2–4 sind kleinere Datenblöcke als kleinere Rechtecke in den Spuren gezeigt – zum Beispiel Datenblock 210 in Spur 201 in 2. In 5A–9 sind größere Datenblöcke als größere Rechtecke in den Spuren gezeigt – zum Beispiel Datenblock 511 in Spur 501 in 5A. Wenn ein Datenblock Daten enthält, entweder aktuell geschrieben (d. h. innerhalb der durch die Figur dargestellten Zeitdauer) oder vorher geschrieben, dann wird dieser Datenblock schattiert gezeigt. Die Dunkelheit der Schattierung stellt die „Stärke” oder den Magnetisierungsgrad der Datenbit in diesem Datenblock dar – so werden zum Beispiel in 5B Datenblöcke 503 und 505 gegenwärtig geschrieben und so sind die Daten „stark” und die Schattierung der Blöcke 503 und 505 ist damit dunkler. Im Vergleich stellt der Datenblock 564 Daten dar, die aufgrund von doppelseitiger Nebenspurstörung (ATI), die aus dem Schreiben von Nachbardatenblöcken 503 und 505 entsteht, teilweise gelöscht sind und die Schattierung von Block 564 ist damit heller. Wenn die Daten gegenwärtig in einen Datenblock eingeschrieben werden, ist dieser Block mit einem dunkleren Umriss gezeigt – zum Beispiel Block 210 in 2 oder Block 563 in 5B.
-
Vorher gespeicherte Daten enthaltende Blöcke enthalten das Wort „Daten”. Gegenwärtig geschriebene Blöcke enthalten ebenfalls Daten, aber das Wort „Write” wird stattdessen benutzt, um anzuzeigen, dass diese Daten innerhalb der durch diese Figur dargestellten Zeitdauer geschrieben werden und vor der durch die Figur dargestellten Zeitdauer nicht dort waren. Wenn ein Block geschrieben wird, zeigt dies an, dass das Dereferenzierungssystem diese physikalische Stelle (Spur und Sektor oder Gruppen von Sektoren) auf eine logische Blockadresse (LBA) abgebildet hat. Übrige Datenblöcke werden nicht auf eine LBA abgebildet und können damit keine geschriebenen Daten empfangen. Wenn ein Datenblock (groß oder klein) die Abkürzung „ATI” enthält, bedeutet dies, dass er entweder momentan irgendeinen Grad von Nebenspurstörung erfährt (in welchem Fall der Datenblock auch das Wort „Aktuell” enthalten kann) oder dass dieser Datenblock vorher irgendwelche ATI-Wirkungen erfahren hatte (in welchen Fall der Datenblock auch das Wort „Vorher” enthalten kann). In Abhängigkeit von der Anzahl von ATI-Ereignissen, die die Daten erfahren haben, kann der Grad an Verlust an Signalstärke von unbedeutend bis ernst genug reichen, den Verlust einiger oder aller der in diesem Datenblock gespeicherten Daten zu ergeben (d. h. selbst bei komplexen Fehlerkorrekturcode(ECC – Error Correction Code)-Verfahren, die alle Fehlerbit einsetzen, können die Daten trotzdem nicht voll wiedergewonnen werden). In allen Fällen kann der Grad an Verlust an Signalstärke durch die Anzahl von für den Datenauslesevorgang erforderlichen Fehlerkorrekturbit gekennzeichnet sein. Anders gesagt können „starke” Daten (d. h. Daten, die minimale oder keine ATI erfahren haben) nur acht ECC-Bit erfordern, während verschlechterte („schwache”) Daten die Verwendung von 12, 16 oder auch mehr ECC-Bit erfordern können. Der Nachteil beim Lesen von „schwachen” Daten ist, dass der Auslesevorgang durch die Notwendigkeit für höhere Stufen an Fehlerkorrektur bedeutsam verlangsamt sein kann, wodurch die Datenausleserate des HDD verringert wird. Innerhalb eines Datenblocks steht die Abkürzung „UI” für „unimportant” (unbedeutend) und wird stets in Verbindung mit der Abkürzung „ATI” (siehe oben) benutzt. ATI ist nur dann „unbedeutend”, wenn es keine Daten in einem Datenblock gibt – Nebenspurstörung kann Daten nicht verschlechtern, wenn es keine Daten zum Verschlechtern gibt. Mit „Frei” bezeichnete Datenblöcke enthalten gegenwärtig keine Nutzdaten – was nicht bedeutet, dass sie nicht vorher beschrieben worden sind; es zeigt nur an, dass jegliche Daten, die jemals in diesen Datenblock eingeschrieben waren, danach schon wieder in einen anderen Datenblock umgeschrieben worden sind, möglicherweise nach Verfahren der vorliegenden Erfindung. Wenn das Dereferenzierungssystem Daten aus einem ersten Block in einen zweiten Block verlagert, entspricht dies einer Neuabbildung des LBA aus dem ersten Block in den zweiten Block.
-
In einigen Datenblöcken ist eine Bezeichnung wie beispielsweise „x10” oder „x1000” gezeigt. Bei Datenblöcken, die auch „Schreiben” enthalten, wäre „x10” die Anzahl von Datenschreibzyklen, die während der durch diese bestimmte Figur dargestellten Zeitdauer auftraten – siehe Datenblock 210 in 2. Bei Datenblöcken, die auch „Daten” enthalten, würde „x10” die Anzahl des Löschens von ATI-Ereignissen darstellen, die die Daten in diesem Datenblock beeinflusst haben – wie bei Datenblock 212 in 2. In einigen Figuren zeigen Pfeile den Datenfluss an, d. h. wie eine bestimme logische Blockadresse (LBA) nach Ausführungsformen neu unterschiedlichen physikalischen Adressen (Datenblöcken) zugeordnet ist.
-
Datenblöcke weisen numerische Etikette (wie beispielsweise Datenblock 210 oben links in 2) auf, die dreierlei Sachen anzeigen: (1) den physikalischen Ort (d. h. die Spur, und den Sektor oder die Gruppe von Sektoren) des Datenblocks, (2) die bestimmten Daten oder Abwesenheit von bereits gespeicherten oder gegenwärtig in den Datenblock geschrieben werdenden Daten, und (3) den Grad von ATI-Löschung, der aufgetreten sein könnte. So könnte in 2–9 der gleiche physikalische Ort eines Datenblocks in einer Spur und einem Sektor unterschiedliche Etiketten aufweisen, sowie neue Daten in diesen Datenblock eingeschrieben werden, oder wie dieser Datenblock durch ATI während des Einschreibens neuer Daten in einen oder beide Nachbardatenblöcke beeinflusst ist. Auch wird, selbst wenn ein Datenblock nicht in einer Figur neu geschrieben wird, wenn dieser Datenblock ATI-Wirkungen antrifft, die eine bedeutsame Abschwächung der Daten (teilweise Entmagnetisierung der Datenbit) ergeben, sich auch seine Datenblocknummer ändern. Als Beispiel vergleiche man 7 und 8: Datenblöcke 752 und 754 erscheinen in beiden dieser Figuren, da sich ihr physikalischer Ort und die dort gespeicherten Daten nicht ändern, während Datenblock 753 in 7 einhundert Mal geschrieben wird („x100”), während der gleiche Datenblock in 8 nunmehr frei ist (mit „853” bezeichnet), da die logische Blockadresse, die vorer dem Ort 753 zugeordnet worden war, nunmehr dem Block 858 zugeordnet ist. Ein weiteres Beispiel ist die Folge von Datenblöcken 212, 222, 232 und 242 in 2, die einen Datenblock mit den gleichen vorher geschriebenen Daten darstellt, die fortschreitend durch ATI-Wirkungen aus dem Schreiben in Datenblöcken 210 bis 240 abgeschwächt sind.
-
ATI-Problem mit Festen Zuschreibungen für Kleinere Datenblöcke
-
2 ist ein Schaltbild 200 eines Schreibvorgangs auf einem
-
Festplattenlaufwerk, das das teilweise Löschen von Daten aufgrund von Nebenspurstörung (ATI – Adjacent Track Interference) in einem Schreibvorgang in Abwesenheit der vorliegenden Erfindung zeigt. Drei Spuren 201, 202 und 203 sind viermal wiederholt dargestellt, um eine Zeitfolge von oben nach unten in 2 darzustellen – über diese Zeitfolge sind in den anfänglich mit 210 etikettierten Datenblock Daten zehnmal eingeschrieben (”x10”) und dann sind zu einer späteren Zeit Daten hundert Mal in diesen gleichen Datenblock eingeschrieben worden (”x100”) – da dies nicht die gleichen Daten sein können, ist der gleiche Datenblock „220” reetikettiert worden, so zeigt die Datenblockbezeichnung sowohl einen physikalischen Ort (Spur und Sektor oder Gruppe von Sektoren) an und auch die Daten oder Abwesenheit von Daten, die bereits gespeichert sind oder gegenwärtig dort eingeschrieben werden. Zu einer weiteren Zeitdauer sind Daten in diesen gleichen Datenblock tausend Mal (”x1000”) eingeschrieben worden und, und da dies wieder nicht die gleichen Daten sein können, ist der Datenblock als „230” neu etikettiert worden. Abschließend sind unten in der Figur Daten nunmehr in diesen gleichen Datenblock fünftausend Mal eingeschrieben worden (”x5000”) und der Datenblock ist als „240” neu etikettiert worden. Der diesem beschriebenen Datenblock benachbarte Datenblock enthält vorher geschriebene Daten, von denen in 2 angenommen wird, dass sie während der durch 2 dargestellten Zeitdauer nachfolgend nicht neu geschrieben werden. Dies bedeutet, dass das Magnetspeichermedium in Spur 202 wiederholten Nebenspurstörungs-(ATI-)Ereignissen unterworfen ist, ohne dass irgendwelche Datenauffrischungsoperationen durchgeführt werden. Im Ergebnis ist es wahrscheinlich, dass die aus den Seiten des Schreibkopfes während der für Block 210 stattfindenden Schreiboperationen austretenden Streumagnetfelder Datenblock 212 abschwächen werden und Einschreiben in Datenblock 220 Datenblock 222 abschwächen wird, Einschreiben in Block 230 Datenblock 232 abschwächen wird und abschließend Einschreiben in Datenblock 240 Datenblock 242 abschwächen wird. Dieses Abschwächen wird durch die fortschreitend hellere Schattierung von Datenblöcken 212, 222, 232 und 242 gekennzeichnet, was durch eine fortschreitende Notwendigkeit zum Einsetzen höherer Anzahlen von ECC-Fehlerbit angezeigt würde, wodurch längere Datenauslesezeiten erforderlich werden. Zu der Zeit wenn die durch den vierten Satz Spuren 201–203 unten erreicht ist, kann Datenblock 242 unlesbar geworden sein, mit dem Verlust von Nutzdaten, die in diesen Datenblock vor der durch 2 dargestellten Zeitdauer eingeschrieben wurden. Diese Figur stellt eindeutig ein unerwünschtes oder auch unannehmbares Ergebnis dar, das mit dem verbesserten Schreibverfahren verhindert werden könnte. Über die Zeitdauer der 2 hat keine Neuzuweisung von logischen Blockadressen (LBA) stattgefunden, so werden die der LBA entsprechend Datenblock 210 zugeordneten Daten auch in Datenblöcke 220, 230 und 240 eingeschrieben und bewirken einen „Hotspot” übermäßig hoher Schreibstärken mit sich ergebender Abwertung der Daten in der durch Datenblöcke 212, 222, 232 und 242 dargestellten Nachbar-LBA. Obwohl die in Blöcken 212, 222, 232 und 242 gespeicherten eigentlichen Daten die gleichen sein sollten, wird die fortschreitende Abschwächung und möglicherweise auch der Verlust dieser Daten durch die langsam abnehmende Schattierung und durch die Umnummerierung des Datenblocks mit der langsamen Verringerung der Magnetisierung angezeigt.
-
Verringerung oder Beseitigung von ATI unter Verwendung von Schreibverfahren nach einigen Ausführungsformen für Kleinere Datenblöcke
-
3 ist ein Schaltbild 300 eines verbesserten Schreibvorgangs nach einer Ausführungsform der Erfindung mit kleineren Datenblöcken. Es sind vier Wiederholungen von Spuren 301–303 dargestellt, die vier aufeinander folgende Perioden innerhalb des Zeitrahmens der 3 darstellen. Eine bestimmte logische Blockadresse (LBA) wird anfänglich Datenblock 311 zugeordnet und dann wieder Datenblock 322 zugeordnet und dann wieder Datenblock 333 zugeordnet und abschließend wieder Datenblock 345 zugeordnet. Diese aufeinander folgende Neuzuordnung kann durch das Dereferenzierungssystem nach Ausführungsformen der Erfindung ausgeführt werden, um die übermäßigen, in 2 gezeigten ATI-Wirkungen zu verhindern und damit vorher gespeicherte Daten in Nachbardatenblöcken zu bewahren. Zum Beispiel stößt der Datenblock 314 nur auf zehn ATI-Ereignisse, ehe die anfänglich Block 311 zugeordnete LBA wieder dem Block 322 zugeordnet wird. Datenblock 325 ist ein Nachbar von Block 322, aber da Block 325 keine Daten enthält, ist er mit „Frei ATI UI” bezeichnet, was anzeigt, dass er „Frei” ist (d. h. keine Daten enthält), auf ATI-Wirkungen gestoßen ist und diese ATI-Wirkungen unbedeutend sind („UI” – Unimportant), da er frei ist. Die dem Block 322 zugeordnete LBA wird wieder dem Block 333 zugeordnet nach zehn Zuschreibungen (”x10”), da der andere (nicht gezeigte) Nachbarblock zu Block 322 Daten enthalten könnte. Viele Datenblöcke in 3 sind frei, zum Beispiel Blöcke 312, 313, 315, 316, 317, 321, 325, 332, 336, 342 und 343 – das bedeutet, dass diese physikalischen Blöcke innerhalb von wenigstens Teilen der durch 3 dargestellten Zeitdauer nicht auf LBA abgebildet sind. Auch gibt es eine Anzahl von vorher gespeicherten Daten enthaltenden Blöcken wie beispielsweise Blöcke 314, 318, 319 und 348, wo die Daten nicht innerhalb der Zeitdauer von 3 neu geschrieben werden (diese Datenblöcke bleiben jedoch in der gesamten 3 den gleichen LBA zugeordnet, d. h. sie sind niemals frei in der 3). Ein Datenblock wird das gleiche Etikett bewahren, wenn er durch entweder Zuschreibung oder ATI-Wirkungen unverändert bleibt. So wird zum Beispiel der freie Block 317 viermal von oben nach unten gezeigt, da er niemals beschrieben wird und niemals durch ATI beeinflusst wird. Demgegenüber wird die zuerst durch Datenblock 312 dargestellte physikalische Adresse („Frei” – d. h. nicht einer LBA zugeordnet) dann beschrieben (nachdem sie einer LBA zugeordnet ist) und neu als 322 etikettiert. Als Nächstes wird der gleiche physikalische Ort aus dieser LBA entzogen und wird nunmehr der freie Datenblock 332, und abschließend ist dieser freie Datenblock durch ATI beeinflusst, um wieder an der Unterseite der 3 als 342 neu etikettiert zu werden (obwohl er noch keiner LBA zugeordnet ist). Datenblock 314 wird anfänglich durch ATI während des Beschreibens von Block 311 beeinflusst und bleibt dann durch nachfolgende ATI-Ereignisse unbeeinflusst und behält damit das Etikett 314 zum unteren Ende der 3.
-
4 ist ein Schaltbild 400 eines verbesserten Schreibvorgangs nach einer Ausführungsform der Erfindung mit kleineren Datenblöcken und doppelseitiger ATI-Verdichtung. Es sind vier Wiederholungen von Spuren 401–403 dargestellt, die vier aufeinander folgende Perioden innerhalb des Zeitrahmens der 4 darstellen. Es sind freie Datenblöcke 412, 413, 415, 416, 418, 421, 425, 426, 427, 432, 433, 438, 445 und 446 dargestellt – diese Blöcke stellen physikalische Stellen dar, die nicht auf LBA innerhalb wenigstens von Teilen der Zeitdauer von 4 abgebildet sind. Blöcke 414, 419, 439 und 444 enthalten vorher gespeicherte Daten, die während der durch 4 dargestellten Zeitdauer nicht neu geschrieben sind – diese Blöcke sind in der gesamten 4 auf die gleichen LBA abgebildet. Oben links in der Figur werden Daten zehn Mal in die Blöcke 411 und 417 eingeschrieben mit dem Ergebnis einer „Doppelverdichtung” der vorher im Block 414 gespeicherten Daten – dies ist durch die Bezeichnung „ATI x20 Daten” angezeigt, wobei das „x20” die kombinierten ATI-Datenlöschwirkungen der „x10” ATI aus Block 411 und „x10” aus Block 417 zeigt. In diesem „Doppelverdichtungs”-Szenario ist die Rate von Datenlöschung aufgrund ATI-Wirkungen im Block 414 verdoppelt. Das Verfahren kann den Verlust von Daten in Block 414 durch Ändern der anfänglich dem Block 411 entsprechenden Abbildung der LBA auf Block 422 (wie durch den Pfeil angezeigt) verhindern und auch durch Ändern der Abbildung der anfänglich dem Block 417 entsprechenden LBA auf Block 423 (wie durch den Pfeil angezeigt). Sobald diese Neuabbildung stattgefunden hat, möglicherweise unter Verwendung eines Dereferenzierungssystems des HDD abgeändert nach den Ausführungsformen der Erfindung, treten keine weiteren ATI-Ereignisse im Block 414 auf- so behält in den vier Wiederholungen von Spuren 401–403 dieser vorher gespeicherte Datenblock das Etikett „414” (und behält auch seine ursprüngliche LBA-Abbildung).
-
Wie in 4 gezeigt, wird die LBA-Abbildung, die ursprünglich zum Block 411 ging, zuerst zum Block 422 verlagert, dann zum Block 435 und abschließend zum Block 447, in allen Fällen nachdem eine vorbestimmte Schreibzählung erreicht ist – in diesem Beispiel zehn Zuschreibungen („x10”). Auf ähnliche Weise wird die LBA-Abbildung, die ursprünglich zum Block 417 ging, zuerst zum Block 423 verlagert, dann zum Block 436 und abschließend zum Block 448 in allen Fällen, nachdem die vorbestimmte Schreibzählung erreicht worden ist – im vorliegenden Beispiel zehn Zuschreibungen („x10”). Wenn ein Nachbardatenblock zu einer LBA entleert wird, ist er „Frei”, wie beispielsweise Block 415. Zum Anzeigen der ATI-Wirkungen auf den Block 415 wird er danach als „425” neu bezeichnet, wenn Daten in den Nachbarblock 422 eingeschrieben werden (nachdem er von „Frei” 412 zu „Zuschreibung x10” 422 geändert ist) – dies zeigt, dass sich die Blocknummerierung ändern könnte, um ATI-Wirkungen auf einen Daten nicht enthaltenden Block anzuzeigen, obwohl diese ATI-Wirkungen aufgrund des Mangels an gespeicherten Daten unbedeutend sind.
-
Ein interessierendes Beispiel ist der Block 44, wo die Daten nicht in der gesamten 4 neu geschrieben werden, jedoch drei unterschiedlich große ATI-Ereignisse die in diesen gleichen physikalischen Datenblock gespeicherten Daten beeinflussen (mit der gleichen LBA-Zuordnung). Oben in der 4 ergeben zwei kombinierte ATI-Ereignisse einen Zustand „ATI x20” und dann später tritt unten ein weiteres Ereignis „ATI x10” aufgrund des Einschreibens von Daten in Nachbarblock 447 auf- mit dem Ergebnis, dass Block 444 nunmehr dreißig ATI-Ereignisse erfahren hat. So kann das Verfahren durch Zulassen einer Fehlerspanne die Kombination von mehreren ATI-Ereignissen berücksichtigen – wenn zum Beispiel bekannt ist, dass fünfzig ATI-Ereignisse ausreichen, eine Abschwächung von Daten in einen Block einzuführen, der nicht neu beschrieben ist, dann muss die Anzahl von Schreibzyklen in (hier als zehn gezeigten) Nachbarblöcken ansreichend kleiner sein, so dass bei mehreren Schreibzyklen die Gesamtzahl von ATI-Ereignissen immer noch unter der maximal annehmbaren Anzahl liegt (d. h. fünfzig im vorliegenden Beispiel).
-
ATI-Problem mit festen Zuschreibungen für größere Datenblöcke für Datenspeichersysteme ohne Ausführungsformen
-
In einigen Fällen können Datenblöcke, die viele aufeinander folgende Sektoren enthalten, in manchen Fällen sogar alle Sektoren in einer Spur enthalten, einer einzigen LBA zugeordnet werden und damit in einer langen Schreiboperation geschrieben werden. Beispiele dieser Möglichkeit sind in 5A–9 dargestellt.
-
5A ist ein Schaltbild 500 eines Schreibvorgangs in Abwesenheit der Erfindung, das vorbestehende Daten zeigt. Es sind freie Datenblöcke 511, 513, 515-518 und 520 gezeigt, zusammen mit Blöcken 512, 514 und 519, die vorher gespeicherte Daten enthalten, die während des Zeitrahmens der 5A nicht neu geschrieben werden. 5A stellt den Zustand des Datenspeichermediums vor den in 5B dargestellten Schreiboperationen dar.
-
5B ist ein Schaltbild 550 eines Schreibvorgangs, das die teilweise Löschung von Daten aufgrund von Nebenspurstörung (ATI – Adjacent Track Interference) in einem Schreibvorgang in Abwesenheit der vorliegenden Erfindung darstellt. Datenblöcke 563 und 565 werden nunmehr auf LBA abgebildet und erfahren tausend Schreiboperationen (”x1000”). Im Ergebnis sind die vorher geschriebenen Daten im Block 562 durch einseitige ATI wesentlich verschlechtert worden. Block 564 erfahrt zweimal die Anzahl von ATI-Löschereignissen (doppelseitige ATI), da er zwischen Blöcken 563 und 565 liegt – dies wird durch die annähernde Beseitigung von Schattierung in der Figur angezeigt, die eine wesentliche magnetische Abschwächung und sogar möglichen Verlust der Lesbarkeit dieser Daten bezeichnet. Block 566 erfährt ebenfalls tausend ATI-Ereignisse, aber da Block 566 zu einer LBA entleert wird und damit „Frei” ist und ohne Daten, sind die tausend ATI-Ereignisse, denen Block 566 ausgesetzt ist, unbedeutend. Blöcke 517-520, die von Spuren 563 und 565 weiter entfernt sind, sind durch die hier dargestellten Schreiboperationen unbeeinflusst – bei Annahme von weniger Bedeutung von Fernspurstörung (FTI – Far Track Interference), die in Spuren soweit wie 30 Spuren beidseitig der beschriebenen Spur gespeicherte Daten beeinflussen kann. Ausführungsformen des Verfahrens der vorliegenden Erfindung können zum Berichtigen von FTI wie auch ATI benutzt werden.
-
Verringerung oder Beseitigung von ATI mit Schreibverfahren für größere Datenblöcke
-
6 ist ein Schaltbild 600 eines verbesserten Schreibvorgangs nach Ausführungsformen der vorliegenden Erfindung, das vorbestehende Daten zeigt. Es sind freie Datenblöcke 651, 653 und 655–662 gezeigt, zusammen mit Blöcken 652, 654 und 663, die vorher gespeicherte Daten enthalten, die während des Zeitrahmens der 6 nicht neu geschrieben sind. 6 stellt den Zustand des Datenspeichermediums vor den in 7–9 dargestellten Schreiboperationen dar.
-
7–9 sind zeitsequenzielle Schaltbilder 700, 800 bzw. 900 eines verbesserten Schreibverfahrens nach Ausführungsformen der vorliegenden Erfindung, die keinen Verlust von vorbestehenden Daten aufgrund von ATI-Wirkungen zeigen.
-
7 zeigt „Freie” Datenblöcke 651, 756 und 657–662 wie auch Blöcke 752, 754 und 663, die vorher gespeicherte Daten enthalten, die innerhalb der durch 7 dargestellten Zeitdauer nicht neu geschrieben werden. Datenblöcke 753 und 755 sind beide innerhalb der Zeitdauer der 7 einhundert Mal („x100”) beschrieben und bewirken teilweise ATI-Löschung der Daten im Block 752. Für Block 752 ist diese ATI-Wirkung „einseitig”, da der andere Nachbarblock zu Block 752, d. h. Block 651, nicht beschrieben wird. Block 754 erfährt jedoch zweimal so viel ATI (doppelseitige ATI), da beide seiner Nachbarblöcke 753 und 755 beschrieben werden.
-
Durch Begrenzen der Gesamtzahl von Zuschreibungen in Blöcken 753 und 755 auf einhundert Zyklen kann jedoch der Grad an ATI-Löschung im Block 754 auf annehmbaren Höhen gehalten werden, d. h. auf Höhen, die das Erfordernis für bedeutend höhere Stufen an ECC-Fehlerbitverwendung nicht veranlassen. Block 756 weist ebenfalls einseitige ATI-Wirkungen aufgrund des Beschreibens von Block 755 auf, aber da es jedoch keine vorgeschriebenen Daten im freien Block 756 gibt (d. h. er ist durch das Dereferenzierungssystem nicht auf eine LBA abgebildet), ist diese ATI wie gezeigt unbedeutend. Keine der anderen Datenblöcke in 7 werden während der Zeitdauer der 7 durch ATI betroffen.
-
8 ist ein Schaltbild 800 des verbesserten Schreibprogramms der 7, das keinen Verlust von vorbestehenden Daten aufgrund von ATI-Wirkungen zu einer späteren Zeitdauer als die in 7 dargestellte Zeitdauer zeigt. Nach den in 7 dargestellten hundert Einschreibungen in Blöcke 753 und 755 hat das Dereferenzierungssystem die vorher mit Blöcken 753 und 755 verbundenen LBA wie gezeigt neu den Datenblöcken 858 bzw. 859 zugeordnet. So erfahren Blöcke 752 und 754 nicht länger ATI-Löschung und bleiben unbeeinflusst und behalten daher die gleichen Blocketiketten 752 und 754 durch den Rest der 8 hindurch. Das Dereferenzierungssystem war in diesem Beispiel in der Lage, zwei freie Blöcke in 7 zu orten – Blöcke 658 und 659, die anderen freien Blöcken (Blöcken 657 bzw. 660) benachbart sind. Daher wird Einschreiben von Daten in Blöcke 858 und 859 in 8 nicht die ATI-Löschung irgendwelcher vorgeschriebenen Daten veranlassen, ungleich der Lage in 7. Obwohl 8 zeigt, dass das Dereferenzierungssystem die Anzahl von Beschreibungen von Blöcken 858 und 859 auf einhundert Schreibzyklen begrenzt, ist dies von geringerer Bedeutung oder in diesem Fall sogar unnötig. Man beachte, dass ATI-Wirkungen aus dem Beschreiben von Block 858 auf Block 859 und die ähnlichen ATI-Wirkungen aus dem Beschreiben von Block 859 auf Block 858 nicht bedeutsam sind, da beide Blöcke 858 und 859 wiederholt neu geschrieben werden (d. h. die LBA, die diesen zwei Blöcken zugeordnet wurden, empfangen wiederholte Schreibbefehle).
-
9 ist ein Schaltbild 900 des verbesserten Schreibvorgangs der 8, das keinen Verlust von vorbestehenden Daten aufgrund von ATI-Wirkungen zu einer späteren Zeit als die in 8 dargestellte Zeit zeigt. Nach den in 8 dargestellten hundert Einschreibungen in Blöcke 858 und 859 hat das Dereferenzierungssystem die vorher mit Blöcken 858 und 859 verbundenen LBA wie gezeigt neu auf Datenblöcke 960 bzw. 961 abgebildet. Hinsichtlich der 8 war das Dereferenzierungssystem in diesem Beispiel in der Lage, zwei freie Blöcke in 8 – Blöcke 860 und 861 – zu orten, die Blöcken benachbart sind, die entweder bereits frei sind (d. h. Block 662) oder die nach Neuzuordnung ihrer zugehörigen LBA (d. h. Block 659) frei werden. Daher wird Einschreiben von Daten in Blöcke 960 und 961 nicht die ATI-Löschung irgendwelcher vorgeschriebenen Daten veranlassen, wie der Fall in 8 war, aber nicht in 7. Obwohl daher 9 das Dereferenzierungssystem als die Anzahl von Beschreibungen von Blöcken 960 und 961 auf einhundert Schreibzyklen begrenzend zeigt, ist dies in diesem Fall von weniger Bedeutung oder auch unnötig. Man beachte, dass ATI-Wirkungen aus dem Beschreiben von Block 960 auf Block 961 und die ähnlichen ATI-Wirkungen aus dem Beschreiben von Block 961 auf Block 960 nicht bedeutsam sind, da beide Blöcke 960 und 961 wiederholt neu geschrieben werden (d. h. die LBA, die diesen zwei Blöcken zugeordnet wurden, wiederholte Schreibbefehle empfangen).
-
Ausführung eines Verfahrens
-
Das Verfahren kann unter Verwendung des vorbestehenden Dereferenzierungssystems des HDD ausgeführt werden. Das Dereferenzierungssystem wird zum Zuordnen von logischen Blockadressen (LBA) zu physikalischen Adressen (Spuren und Sektornummern) auf der physikalischen Plattenoberfläche (z. B. Oberfläche 124 in 1) benutzt. Das Verfahren kann einen Schreibzähler für jeden Datenblock einsetzen, um die Anzahl von Schreibzyklen an dieser physikalischen Stelle zu verfolgen. Man beachte, dass das Verfahren die physikalischen Orte von Datenblöcken betreffen kann, da ATI-Wirkungen zwischen benachbarten physikalischen Datenblöcken (auf Nachbarspuren) auftreten können und von den LBA-Adressen unabhängig sind. Jedoch kann das Verfahren Neuabbildung von LBA zum Bewirken der Verringerung oder Beseitigung von ATI-Wirkungen zwischen physikalischen Datenblöcken einsetzen.
-
Alternative Ausführungsformen
-
Obwohl Ausführungsformen im Zusammenhang mit Festplattenlaufwerken beschrieben worden sind, versteht es sich, dass verschiedene Änderungen, Ergänzungen und Abänderungen durchgeführt werden können. Weiterhin soll der Schutzumfang der vorliegenden Anmeldung nicht auf die bestimmen Ausführungsformen des Vorgangs, der Maschine, Herstellung oder Zusammensetzung von Materie, Mittel, in der Anmeldung beschriebenen Verfahren und Schritten begrenzt sein. Wie der gewöhnliche Fachmann leicht aus der Offenbarung von Ausführungsformen erkennen wird, können Vorgänge, Maschinen, Herstellung, Zusammensetzung von Materie, Mittel, Verfahren oder Schritte, die gegenwärtig bestehen oder später zu entwickeln sind, die im Wesentlichen die gleiche Funktion durchführen oder im Wesentlichen das gleiche Ergebnis wie die hier beschriebenen entsprechenden Ausführungsformen erreichen, benutzt werden. Dementsprechend sollen die beiliegenden Ansprüche solche Vorgänge, Maschinen, Herstellung, Zusammensetzung von Materie, Mittel, Verfahren oder Schritte in ihrem Schutzumfang umfassen.