DE3884875T2 - Mechanismus zum Überspringen von Fehlern bei Plattengeräten. - Google Patents
Mechanismus zum Überspringen von Fehlern bei Plattengeräten.Info
- Publication number
- DE3884875T2 DE3884875T2 DE88110701T DE3884875T DE3884875T2 DE 3884875 T2 DE3884875 T2 DE 3884875T2 DE 88110701 T DE88110701 T DE 88110701T DE 3884875 T DE3884875 T DE 3884875T DE 3884875 T2 DE3884875 T2 DE 3884875T2
- Authority
- DE
- Germany
- Prior art keywords
- area
- defect
- bytes
- good
- bad
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/18—Error detection or correction; Testing, e.g. of drop-outs
- G11B20/1883—Methods for assignment of alternate areas for defective areas
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/12—Formatting, e.g. arrangement of data block or words on the record carriers
- G11B20/1217—Formatting, e.g. arrangement of data block or words on the record carriers on discs
- G11B20/1252—Formatting, e.g. arrangement of data block or words on the record carriers on discs for discontinuous data, e.g. digital information signals or computer program data
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/18—Error detection or correction; Testing, e.g. of drop-outs
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B2220/00—Record carriers by type
- G11B2220/20—Disc-shaped record carriers
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Automatic Disk Changers (AREA)
- Manufacturing Of Magnetic Record Carriers (AREA)
Description
- Die Erfindung bezieht sich auf optische und magnetische Speicherplatten und insbesondere auf Techniken zum Vermeiden oder Berücksichtigen von Defekten auf solchen Platten zum Speichern von Daten.
- Magnetische Platten werden häufig benutzt zum Speichern von Daten in Computersystemen. Vor kurzem begannen auch verschiedene Typen von optischen Platten auf den Markt zu kommen. Diese umfassen Nur-Lese- Platten, Schreib-Einmal-Platten, ebenso wie Vollfunktionslese-/schreibplatten.
- Ein Problem, das allen Platten gemeinsam ist, ist das, daß sie nicht vollständig frei von Fehlern hergestellt werden können. Das heißt, es spielt keine Rolle wie sorgfältig die Platte hergestellt ist, es wird immer einige Abschnitte auf der Platte geben, auf denen die Daten, die gelesen werden, nicht die gleichen sein werden wie die Daten, die zuvor geschrieben wurden. Solche Fehler können ebenso während dem Gebrauch auftreten, auch wenn sie nicht unmittelbar nach der Herstellung vorhanden sind. Dieses Problem ist noch brennender in dem relativ jungen Gebiet optischer Platten, auf denen Fehler sehr viel mal mehr üblich sind, als sie es in dem technologisch reifen Gebiet von magnetischen Platten sind.
- Platten, die bei Computeranwendungen verwendet werden, sind typischerweise in konzentrische Spuren aufgeteilt, und jede Spur ist in einen oder mehrere Sektoren aufgeteilt. Wenn die Platte zweiseitig ist, oder wenn vielfache Platten simultan rotiert werden, dann sind die verschiedenen konzentrischen Spuren der verschiedenen Oberflächen gewöhnlich in einer Reihe aufgebaut, um konzentrische Zylinder zu formen, auf deren Spuren gleichzeitig durch verschiedene Köpfe zugegriffen werden kann. Im Falle von optischen Platten, bei denen das spiralförmige Aufnahmeformat von den Audioanwendungen solcher Platten übernommen wurde, werden konzentrische Spuren durch Plazieren einer Markierung an dem Ende jeder Umdrehung der spiralförmigen Spur simuliert und veranlassen den Spurmechanismus jedesmal, wenn solch eine Indexmarkierung getroffen wird, um eine Spur nach innen zu springen. Auf diese Weise wird der graduellen Auswärtsbewegung des Spurmechanismus, die durch die Spirale der Platte verursacht wird, einmal bei jeder Umdrehung entgegengehalten, um den Kopf auf dem gleichen Segment der Spirale während vieler Umdrehungen der Platte zu halten.
- Eine Platte kann entweder fest-sektoriert oder software-sektoriert sein. Bei fest-sektorierten Platten ist ein Loch oder eine andere physikalische Indexmarkierung auf der Platte plaziert, so daß sie bei jeder Umdrehung einen Impuls triggert (ein Indeximpuls genannt). Physikalische Markierungen sind ebenfalls bei festen Intervallen um die Platte herum plaziert, z. B. bei 18º Intervallen, um den Beginn jedes Sektors in einer Spur anzuzeigen. Eine Platte, die mit diesen physikalischen Markierungen formatiert ist, wird als fest-sektoriert bezeichnet, weil die Sektoren nicht zu unterschiedlichen Positionen auf einer Spur bewegt werden können, wenn die Platte einmal den Hersteller verläßt. Es sollte jedoch bemerkt werden, daß einige Typen von Platten, die als fest-sektoriert bezeichnet werden, tatsächlich in dem Feld modifizierbar sind. Die Sektormarkierungen auf diesen Platten stellen ein einzigartiges Muster dar, das auf das Medium gelegt wurde, das lesbar und modifizierbar mit einer geeigneten Schaltung ist.
- Software-sektorierte Platten haben ebenfalls eine Indexmarkierung, um den Anfang jeder Spur auf der Platte anzuzeigen. Markierungen, um den Anfang eines Sektors anzuzeigen, sind jedoch nicht in dem Medium befestigt und werden unter Software-Steuerung abgelegt. Zusätzlich können Sektoren auf einer software-sektorierten Platte bei unterschiedlichen Winkelpositionen auf unterschiedlichen Spuren wie erwünscht plaziert werden.
- Typischerweise enthält ein Sektor einen Vorsatzbereich, gefolgt von einem Datenbereich. Dem Vorsatzbereich geht ein Zwischenraum voraus, der benutzt wird, um der Plattensteuerschaltung genug Zeit zu erlauben, um das Lesen des Vorsatzes vorzubereiten, nachdem das Beginnen des Sektors erkannt wurde. Der Vorsatz beginnt mit einem VFO-Gebiet, das die Kopf-Lese-Schaltung erkennt und benutzt, um seine interne Bit-Takt Frequenz zu setzen. Auf das VFO-Gebiet folgt ein Synchronisationsgebiet. Das Synchronisationsgebiet enthält einen Code, den die Plattensteuereinrichtung verwendet, um sauber den einkommenden Bitstrom in Byte zu trennen. Der Vorsatz umfaßt dann eine Identifikationssektion, die gewöhnlich zwei Byte für die Tracknummer, ein Byte für die Kopfnummer und ein Byte für die Sektornummer enthält. Der Vorsatz kann andere Information genauso umfassen. Folgend dem Vorsatz gibt es einen zweiten Zwischenraum, um der Plattensteuereinrichtung Zeit zu erlauben, um zu bestimmen, ob die Sektoridentifikationsinformation anzeigt, daß dies der gewünschte Sektor ist, und Zeit, um das Schreibsignal zu setzen, wenn Information in den Datenbereich dieses Sektors geschrieben werden soll. Wenn der Vorsatzbereich einen Fehlererfassungscode aufweist (z. B. einen CRC), dann stellt dieser Zwischenraum ebenfalls die Zeit bereit, die notwendig ist, um zu bestimmen, ob der Vorsatz einen Fehler enthielt.
- Der Datenbereich in einem Sektor beginnt mit einem VFO-Gebiet und einem Synchronisationsgebiet, denen typischerweise unmittelbar all die Datenbyte für den Sektor folgen. Ein Fehlererfassungscode (EDC) oder ein Fehlererfassungs- und Korrekturcode (EDAC) kann ebenfalls enthalten sein. Ein dritter Zwischenraum folgt dem Datenbereich, vor dem Beginnen des nächsten Sektors, um Variationen in der Geschwindigkeit des Motors, der die Platte rotiert, zu berücksichtigen.
- Eine Anzahl verschiedener Mechanismen wurden in der Vergangenheit benutzt, um Defekte zu berücksichtigen. Eine Technik, die oft verwendet wird, wenn auf einen Fehler getroffen wird, während die Platte im Dienst ist, umfaßt einfach Wiederlesen der Daten. Eine Lese-Operation kann dreimal versucht werden, bevor ein Versagen angezeigt wird. Diese Techniken erlauben manchmal die Wiedergewinnung von Daten, die ansonsten als verloren betrachtet werden würden, wenn der Defekt, der den Fehler verursacht, nur intermittierend in der Natur ist (d. h. "Soft"- Defekte). Die Technik stellt jedoch keine Verbesserung bereit, wenn der Defekt permanent ist (d. h. "hard"), und garantiert nicht zu arbeiten, auch wenn der Defekt intermittierend ist.
- Bei einem anderen gewöhnlichen Mechanismus wird ein Fehlererfassungs- und Korrekturcode (EDAC) in jedem Sektor verwendet, um ein Redundanzmaß zu der in diesem Sektor gespeicherten Information hinzuzufügen. Wenn die Information auf die Platte geschrieben wird, wird ein Kontrollcode berechnet und auf die Platte zusammen mit der Information geschrieben. Wenn die Information von der Platte zurückgelesen wird, wird ein neuer Kontrollcode berechnet und mit dem Kontrollcode verglichen, der auf die Platte mit den Daten geschrieben worden war. Wenn die beiden Kontrollcodes identisch sind, dann wird angenommen, daß die Daten zutreffend sind. Wenn sie unterschiedlich sind, dann existiert ein Fehler und ein Versuch kann gemacht werden, um die fehlerhaften Daten zu korrigieren.
- Dieser Mechanismus ist effektiv so weit er geht und nützlich bei Platten, die andere Defektanpaßtechniken genauso benutzen. Der Mechanismus hat jedoch eine Kapazität von nur einer bestimmten Anzahl von Fehlern pro Kontrollblock und es ist wünschenswert diese Kapazität für Defekte zu reservieren, die während dem Dienst auftreten, nachdem die Platte formatiert wurde oder anders initialisiert. Es ist daher wünschenswert, andere Techniken zu benutzen, wenn ein Defekt während der Formatierungsstufe entdeckt wurde.
- Eine Technik, die bei der Formatierungsstufe zum Anpassen von Defekten bei magnetischen oder schreibbaren optischen Platten benutzt wird, wird als Sektorverschiebung bezeichnet. Bei dieser Technik können eine oder zwei freie Spuren auf einer Platte reserviert sein zum Speichern von Sektoren von Daten, die anders einen Defekt enthalten würden. Bei einer typischen Formatieroperation wird ein Sektor wiederholt mit Daten beschrieben, gelesen und mit dem Original verglichen. Wenn weniger als eine bestimmte Anzahl von Fehlern auftritt, wird der Fehler als gut betrachtet und Fehlermanagement wird den EDAC-Techniken überlassen. Ansonsten wird der Sektor als schlecht angesehen und als solcher markiert. Ein Zeiger wird ebenfalls in den Vorsatzabschnitt des schlechten Sektors geschrieben, der auf die freie Spur zeigt, so daß der Kopf sich zu dem freien Sektor auf der gleichen Spur bewegen wird, wann immer ein Lesen von, oder Schreiben zu dem schlechten Sektor auftritt.
- Ein wichtiges Problem bei der Sektorverschiebungstechnik ist das, daß der Fehler, der verursacht, daß der Sektor als schlecht betrachtet wird, nur von einigen wenigen schlechten Byte herrühren kann. Dies ist ein recht gewöhnliches Auftreten bei magnetischen Platten und noch gewöhnlicher bei optischen Platten. Demgemäß kann ein vollständiger Sektor von Daten nur wegen ein paar schlechter Byte verdorben sein. Ein anderes Problem bei dieser Technik tritt auf, weil Dateien häufig auf Platten in aufeinanderfolgenden Sektoren gespeichert werden. Wenn ein Sektor verschoben wird, weil der normalerweise darauffolgende Sektor einen Defekt enthält, wird eine Zeitstrafe bezahlt, wann immer die gesamte Datei ausgelesen wird.
- Eine andere Technik, die bei der Formatierungsstufe benutzt wird, ist bekannt als Sektor-Auslassen. Diese Technik ist ähnlich der Sektorverschiebungstechnik, außer daß die ausgesparten Sektoren an dem Ende jeder Spur anstelle auf einer getrennten freien Spur angeordnet sind. Die Sektorausspartechnik hat die gleichen Nachteile wie die Sektorverschiebungstechnik.
- Bei noch einer anderen Technik zum Anpassen von Defekten auf einer Platte, die nur für software-sektorierte Platten verfügbar ist, werden Daten zuerst auf eine Spur geschrieben und dann zurückgelesen, um den Ort jedes Defektes zu bestimmen. Sektormarkierungen, Vorsätze und Datengebiete werden dann auf die Spur auf solch eine Weise geschrieben, daß all die entdeckten Defekte in Zwischenraumbereichen angeordnet sind. Diese Technik stellt eine Verbesserung gegenüber den Sektorverschiebungs- und Sektorausspartechniken bereit, aber sie ist noch kein Optimum. Wenn z. B. ein Defekt gegen das Ende dessen, das sonst ein Datenbereich sein würde, entdeckt wurde, muß der Zwischenraumbereich, der dem Datenbereich vorangeht, fast bis zu der Größe eines Datenbereiches (z. B. 1 Kbyte) ausgedehnt werden, um diese Technik zu benutzen.
- Noch eine andere Technik zum Anpassen von Defekten auf einer Platte wird in einer technischen Spezifikation von Magnetic Peripherals, Inc. vorgestellt. Bei dieser Spezifikation kann ein Sektor entweder in einem 4K-Format oder einem 16K-Format sein. In dem 4K-Format, enthält der Vorsatz Information, die der Steuereinrichtung erlaubt über einen 96- Byte-Bereich einer festen Größe des Mediums zu springen, der über dem Defekt zentriert wurde. Der Defekt kann so groß sein wie 64 Byte, bevor er als nicht verwaltbar mit dieser Technik betrachtet wird und zu anderen Defektverwaltungstechniken verwiesen wird. Bei dem 16K- Format werden zwei Sprünge in einem einzelnen Datenbereich untergebracht. Diese beiden Sprünge können miteinander verkettet sein, um einen einzelnen 160-Byte-Sprung zu bilden. Der Vorsatz für jeden Sektor enthält ein Flag-Wort, das anzeigt, ob der Datenbereich 0, 1 oder, in dem Falle von dem 16K-Format, zwei Sprünge enthält. Der Vorsatz umfaßt ebenfalls einen oder zwei 2-Byte-Defektzeiger. Wenn der Datenbereich einen Defekt enthält, dann enthält der erste Defektzeiger die Größe, in Byte, von dem Beginn des Datensegmentes zu dem Beginn des ersten Sprunges. Wenn der Sektor im 4K-Format ist, dann beginnen die Daten wieder unmittelbar nach dem 96-Byte-Sprung und setzen sich fort bis zu dem Ende des Datenbereiches. Wenn der Sektor im 16K- Format ist und das Flag-Wort anzeigt, daß der Datenbereich einen zweiten Defekt enthält, dann enthält der zweite Defektzeiger die Anzahl von Byte zwischen dem ersten Sprung und dem zweiten Sprung. Lesen von Daten wird unmittelbar nach dem zweiten Sprung wieder aufgenommen und setzt sich fort bis zu dem Ende des Datenbereiches.
- Die in der technischen Spezifikation beschriebene Technik kann flexibler sein als irgendeine der zuvor beschriebenen Techniken, aber sie hat noch Unzulänglichkeiten. Erstens, da der Defektsprung immer 96 Byte ist, werden 96 Byte immer verloren sein, auch wenn der Defekt viel kleiner ist. Um die zweite Unzulänglichkeit zu verstehen, ist es nützlich zu bemerken, daß Plattensteuereinrichtungen typischerweise eine Abgleichlogik aufweisen zum Bestimmen, ob der Sektor, der dann von der Platte gelesen wird, der von der Steuereinrichtung gewünschte Sektor ist. Da die Sektoridentifikationsinformation von dem Vorsatz gelesen wird, wird sie von der Abgleichlogik Byte um Byte verglichen mit gespeicherter Information, die den gewünschten Sektor identifiziert. Wenn die gleiche Abgleichlogik ebenfalls erforderlich ist, um die Flag-Wörter (die ebenfalls in dem Vorsatz sind) zu testen, wenn sie ankommen, um zu bestimmen, welcher, wenn irgendeiner, der Defektzeiger eine gültige Information enthält, dann kann die Abgleichlogik extrem komplex werden. Solche Komplexität ist ein ernstes Problem bei den Raten, bei denen Daten von der Platte ankommen. Datenraten sind extrem schnell, sie erfordern, daß die Abgleichlogik so einfach wie möglich ist.
- Ein Verfahren und eine Vorrichtung zum Aufzeichnen von Daten ohne Aufzeichnen auf defekte Bereiche eines Datenaufzeichnungsmediums ist in der Patentanmeldung GB 2,022,298 A offenbart. Bei einer Platte, die in Sektoren aufgeteilt ist, hat jeder Sektor einen Adreßaufzeichnungsbereich, in dem die Adresse jedes defekten Bereiches in diesem Sektor aufgezeichnet ist. Daten werden in dem Sektor bis zu dem defekten Bereich aufgezeichnet und setzen sich auf der anderen Seite des defekten Bereiches fort. Ein Zwischenraum von zwei Byte in der Breite kann übrig sein, um mögliches Wachsen eines anfänglich kleineren defekten Bereiches zu erlauben. Die Vorrichtung des Standes der Technik stellt keine Adreßinformation für die Endposition des defekten Bereiches bereit, da dort implizit eine konstante Länge des defekten Bereiches von zwei Byte errichtet ist. Demgemäß ist die Defektadresse, die die Vorrichtung des Standes der Technik in den Aufzeichnungsbereich jedes Sektors schreibt, nur ein einzelner Wert, der den Ort in dem Sektor nur eines defekten Bits anzeigt. Nichts wird auf die Platte geschrieben, das die Größe des schlechten Bereiches anzeigen würde, der den Defekt enthält; anstelle dessen nimmt die Vorrichtung immer einen konstanten festen defekten Zwei-Byte-Bereich an.
- Es ist daher ein Ziel der vorliegenden Erfindung, ein neues Verfahren und eine Vorrichtung zur Defektverwaltung auf einem Datenaufzeichnungsmedium bereitzustellen, die einige oder alle der obigen Probleme vermindert, insbesondere das Springen über Defekte in dem Datenbereich mit minimalem Overhead erlaubt und eine Defektverwaltung von schlechten Bereichen variabler Länge ermöglicht.
- Dieses und andere Ziele werden durch den Mechanismus für Plattenlaufwerke, wie in Anspruch 1 gekennzeichnet, und durch das Defektüberspring-Verfahren, wie in Anspruch 16 gekennzeichnet, erreicht und werden offensichtlicher werden, wenn sie in Verbindung mit der folgenden Beschreibung und den beigefügten Zeichnungen genommen werden, die ein bevorzugtes Ausführungsbeispiel der Erfindung zeigen.
- Bei dem in der Gegenstandsvorrichtung angewandten Plattenformat umfaßt jeder Sektor einen Vorsatz- und einen Datenbereich, wobei der Datenbereich einen oder mehrere Defekte aufweisen kann. Der Vorsatz umfaßt einen Defektdeskriptor, der für jeden Defekt in dem Datenbereich die Größe des guten Bereiches, der einem "schlechten Bereich", der den Defekt abdeckt, vorausgeht und die Größe des schlechten Bereiches spezifiziert. Die schlechten Bereiche sind demgemäß variabel in der Größe und können irgendwo in dem Datenbereich gelegen sein. Wenn der Datenbereich keine Defekte enthält, dann wird der Abschnitt des Defektbeschreibers, der die Anzahl guter Bytes anzeigt, die dem ersten schlechten Bereich vorausgehen, auf eine Anzahl von Bytes gesetzt, die zumindest so groß wie die Sektorgröße ist.
- Falls nicht anders spezifiziert, wie hier verwendet, ist die Sektorgröße die Anzahl guter Byte in dem Datenbereich eines Sektors, einschließlich EDAC.
- Wenn ein Sektor von der Platte gelesen werden soll, werden die Werte, die in dem Defektdeskriptor spezifiziert sind, zuerst in Registern in einer Plattensteuereinrichtung gespeichert. Datenbytes werden dann von dem Datenbereich gelesen, während die Spur der Anzahl der gelesenen Bytes gehalten wird. Wenn die Anzahl der gelesenen Byte die Sektorgröße erreicht, dann enthielt der Datenbereich keinen Defekt und die Leseoperation ist vollständig. Wenn die Anzahl von gelesenen Byte die Größe des ersten guten Bereiches erreicht, bevor sie die Sektorgröße erreicht, dann wird das Lesen in dem ersten schlechten Bereich fortgesetzt und die Daten werden abgelegt bis die Anzahl von schlechten gelesenen Byte die Größe des ersten schlechten Bereiches erreicht. Wenn der Defektdeskriptor einen zweiten schlechten Bereich unterstützt, dann wird das Lesen der Datenbyte von einem zweiten guten Bereich fortgesetzt bis entweder (1) die Gesamtanzahl guter gelesener Bytes (von sowohl dem ersten guten Bereich als auch dem zweiten guten Bereich) die Sektorgröße erreicht, in welchem Falle die Leseoperation vollständig ist, oder (2) die Anzahl von in dem Defektdeskriptor spezifizierten Bytes für den zweiten guten Bereich erreicht ist, in welchem Falle die Steuereinrichtung dann fortfährt, Bytes von dem zweiten schlechten Bereich zu lesen und abzulegen. Der Prozeß setzt sich fort bis der Lesekopf jenseits dem letzten schlechten Bereich ist, der von dem Defektdeskriptor unterstützt wird. Gute Daten werden dann gelesen bis zu dem Ende des Datenbereiches.
- Es kann gesehen werden, daß nicht nur diese Technik die Flexibilität von schlechten Bereichen variabler Länge bereitstellt, um kleine oder große Defekte abzudecken, sondern daß sie auch einfach zu implementieren ist, da sie kein Testen von Flags erfordert, um zu bestimmen, ob oder wieviele Defekte übersprungen werden. Die gleiche Hardwarevorrichtung kann ohne Berücksichtigung der Anzahl von Sprüngen bis zu der Gesamtanzahl benutzt werden, die von dem Defektdeskriptor unterstützt wird.
- Fig. 1a und 1b zeigen die Organisation eines Sektors auf einer Platte, die gemäß der Erfindung initialisiert ist.
- Fig. 2 ist ein Flußdiagramm, das einen Prozeß zum Lesen von Daten von einem Sektor auf einer Platte, die gemäß der Erfindung initialisiert ist, zeigt.
- Fig. 3 ist ein Flußdiagramm, daß einen Prozeß zum Initialisieren einer Platte gemäß der Erfindung zeigt.
- In den Fig. 1a und 1b ist eine Darstellung des Formates eines Sektors gezeigt, der einen verbesserten Defektverwaltungsmechanismus gemäß der Erfindung hat. Oben in der Fig. 1a ist eine AMF-Wellenform 10 gezeigt. Sie umfaßt einen AMF-(Address Mark Found)-Impuls 12, der den Beginn des Sektors anzeigt, der in den Fig. 1a und 1b dargestellt ist. Auf einer fest-sektorierten Platte würde der AMF-Impuls durch einen Sektorimpuls ersetzt werden, der durch ein Sektorbeginnloch oder eine andere permanente oder semi-permanente Markierung erzeugt wurde.
- Der Abschnitt der Spur auf der Platte, der den zu beschreibenden Sektor enthält, ist in der Fig. 1a als Streifen 20 gezeigt. Er beginnt mit einem ZWISCHENRAUM-1-Bereich 22, der unter dem Lesekopf sein sollte, wenn der AMF-Impuls 12 empfangen wird. Auf den ZWISCHEN- RAUM-1-Bereich 22 folgt ein VORSATZ-Bereich 24, der kurz nach dem AMF-Impuls 12 beginnt. Dem VORSATZ-Bereich 24 folgt ein Zwi- SCHENRAUM-2-Bereich 26, dem wiederum ein DATEN-Bereich 28 folgt. Die Sektorgröße bei dem vorliegenden Ausführungsbeispiel ist 1 K-Byte, so daß der DATEN-Bereich 28 groß genug gemacht ist, um alle 1 K-Bytes aufzunehmen, genauso wie ein EDAC, ausschließlich in guten Bereichen. Dem DATEN-Bereich 28 folgt ein ZWISCHENRAUM-3- Bereich 30, der sich bis zu dem Beginn des nächsten Sektors fortsetzt. Die Zwecke des ZWISCHENRAUM-1-Bereiches 22, des ZWISCHEN- RAUM-2-Bereiches 26 und des ZWISCHENRAUM-3-Bereiches 30 sind die gleichen wie die, die oben mit Bezug auf den Stand der Technik beschrieben wurden.
- Der Streifen 40 zeigt ein Detail eines VORSATZ-Bereiches 24. Er beginnt mit einem VFO-Bereich 42, gefolgt von einem SYNC-Bereich 44. Diese beiden Bereiche stellen die Information und die Zeitgebung bereit, die notwendig für die Lesekopfschaltung sind, um ihre Taktfrequenz in Übereinstimmung mit der Geschwindigkeit festzulegen, bei der Daten von der Platte ankommen werden. Dem SYNC-Bereich 44 folgt ein ID- Bereich 46, der vier Byte Information enthält. Wie im Streifen 60 unter dem Streifen 40 gezeigt, sind die vier Byte das TH-Byte 62, das TL-Byte 64, das H-Byte 66 und das S-Byte 68. Sie stellen jeweils den Abschnitt hoher Ordnung der Spurnummer, den Abschnitt niedriger Ordnung der Spurnummer, die Kopfnummer und die Sektornummer in der Spur dar.
- Dem ID-Bereich 26 folgt ein Defektdeskriptor 48, der in größerem Detail unten beschrieben wird. Dem Defektdeskriptor 48 folgt ein CRC- Bereich 50. Der CRC-Bereich 50 stellt eine Fehlererfassungsfähigkeit bereit, die den ID-Bereich 46 und den DEFEKTDESKRIPTOR-Bereich 49 abdeckt, und stellt keine Fehlerkorrekturfähigkeit bereit.
- Streifen 60 zeigt in größerem Detail den ID-Bereich 46 und den DE- FEKTDESKRIPTOR-Bereich 48. Der Inhalt des ID-Bereiches 46 ist oben beschrieben. Der DEFEKTDESKRIPTOR-Bereich 48 umfaßt zwei 2-Byte-Defektzeiger 70 und 72. Der Defektzeiger 70 ist in einen GA1- ZÄHLUNG-Bereich 74, der die 11 Bit hoher Ordnung besetzt, und einen BA1-ZÄHLUNG-Bereich 76, der die 5 Bit niedriger Ordnung besetzt, aufgeteilt. Der 2-Byte-Defektzeiger 72 ist ähnlich aufgeteilt in einen GA2-ZÄHLUNG-Bereich 78, der die 11 Bit hoher Ordnung besetzt, und einen BA2-ZÄHLUNG-Bereich 80, der die 5 Bit niedriger Ordnung besetzt.
- In Fig. 1b ist ein Streifen 100 gezeigt, der in größerem Detail den DATEN-Bereich 28 zeigt, der auf dem Streifen 20 in Fig. 1a gezeigt ist. Das gezeigte Detail setzt voraus, daß der DATEN-Bereich 28 zwei Defekte aufweist, die mit 1 und 2 (nicht gezeigt) bezeichnet sind. Der DATEN-Bereich 28 beginnt mit einem VFO-Bereich 102 und einem SYNC-Bereich 104, wobei der Zweck dieser Bereiche der gleiche ist, wie der des VFO-Bereiches 42 und des SYNC-Bereiches 44, gezeigt in Fig. 1a. Der SYNC-Bereich 104 wird von einem GA1-Bereich 106 gefolgt, der die Anzahl von Datenbytes hat, die durch den GA1-ZÄHLUNG- Bereich 74, gezeigt in Fig. 1a, spezifiziert ist. Der GA1-Bereich 106 ist als der erste "gute Bereich" in dem DATEN-Bereich 28 bekannt. Ihm folgt ein BA1-Bereich 108, der die Anzahl von Byte enthält, die in dem BA1-ZÄHLUNG-Bereich 46 spezifiziert sind. Der BA1-Bereich 108 ist der erste "schlechte Bereich" und der erste Defekt tritt in diesem Bereich auf. Herunter bis zu der Grenze der Granularität, durch die die Werte in dem GA1-ZÄHLUNG-Bereich 74 und dem BA1-ZÄHLUNG- Bereich 76 die Anzahl der Byte spezifizieren (veranschaulichend, diese Werte können eine Anzahl von Byte in 4-Byte-Inkrementen spezifizieren), muß der BA1-Bereich 108 nicht größer sein als der Defekt, den er überdeckt.
- Dem BA1-Bereich 108 folgt in dem DATEN-Bereich 28 ein anderer VFO-Bereich 110 und ein SYNC-Bereich 112, denen wiederum ein GA2- Bereich 114 folgt. Der GA2-Bereich 114 ist der zweite "gute Bereich" in dem DATEN-Bereich und enthält die Anzahl von Byte, die durch den Wert in dem GA2-ZÄHLUNG-Bereich 78 spezifiziert sind. Dem GA2- Bereich 114 folgt der zweite "schlechte Bereich", BA2-Bereich 116, der den zweiten Defekt abdeckt, und der die Anzahl von Byte enthält, die durch den Wert in dem BA2-ZÄHLUNG-Bereich 80 spezifiziert ist.
- Folgend dem BA2-Bereich 116 ist ein anderer VFO-Bereich 118 und ein SYNC-Bereich 120, denen weiterhin ein letzter "guter Bereich", GAF- Bereich 122 folgt. Der GAF-Bereich 122 enthält die Anzahl von Byte, die erforderlich sind, um die Gesamtanzahl von Byte in gute Bereiche in dem DATEN-Bereich 28 (einschließlich GA1-Bereich 106, GA2-Bereich 114 und GAF-Bereich 120) bis zu der Sektorgröße zu bringen. Der DATEN-Bereich 28 umfaßt auch einen EDAC-Bereich (nicht gezeigt), der eine Fehlererfassung und Korrektur für alle drei guten Bereiche in dem DATEN-Bereich 28 bereitstellt. Dem EDAC-Bereich folgen gewöhnlicherweise die Benutzerdaten, aber da der erfinderische Mechanismus Defekte auch in dem EDAC-Bereich genauso wie in den Benutzerdaten berücksichtigen kann, kann der EDAC vollständig in dem GAF- Bereich 122 oder zwischen dem GA2-Bereich 114 und dem GAF-Bereich 122 aufgeteilt sein, oder zwischen allen drei guten Bereichen aufgeteilt sein.
- Wenn der DATEN-Bereich 28 nur einen Defekt enthält, dann würden der BA2-Bereich 116, der VFO-Bereich 118, der SYNC-Bereich 120 und der GAF-Bereich 122 weggelassen werden. Die Abwesenheit des zweiten schlechten Bereiches und der letzte gute Bereich würden in dem Defektdeskriptor 48 durch Plazieren eines Wertes in dem GA2-ZÄHLUNG- Bereich 78 angezeigt werden, der eine große Anzahl von Byte, z. B. 2048, spezifiziert. Wie es gesehen werden wird, ist eine feste Anzahl, die zumindest so groß wie die Sektorgröße ist, am leichtesten, aber jede Anzahl, die zumindest so groß wie die Sektorgröße minus der Anzahl von Byte, die durch den Wert in dem GA1-ZÄHLUNG-Bereich 74 spezifiziert ist, würde ordentlich arbeiten.
- Wenn der DATEN-Bereich 28 keine Defekte enthält, dann würden alle Bereiche in dem DATEN-Bereich 28 von dem BA1-Bereich 108 bis zu dem GAF-Bereich 122, einschließlich, weggelassen werden. Dies würde in dem Defektdeskriptor 48 durch Plazieren eines Wertes in dem GA1- ZÄHLUNG-Bereich 74 angezeigt werden, der zumindest so groß wie die Sektorgröße ist.
- Es kann gesehen werden, daß das Sektorformat, gezeigt in den Fig. 1a und 1b, bis zu zwei Defekte in dem Datenbereich jedes Sektors berücksichtigen kann. Die unterstützte Anzahl von Defekten kann wie gewünscht erhöht oder erniedrigt werden durch Einschließen von mehr bzw. weniger als zwei 2-Byte-Defektzeigern, wie z. B. 70 oder 72, in dem Defektdeskriptor 48. Eine größere Anzahl solcher Defektzeiger kann mehr Defekte in dem DATEN-Bereich 28 unterstützen, bevor der Sektor von dieser Technik als unverwaltbar deklariert wird und zu anderen Defektverwaltungstechniken verwiesen wird. Auf der anderen Seite ist der vergrößerte Defektdeskriptor selbst zusätzlicher Overhead und reduziert auch die Effektivität der Fehlererfassung, die durch den CRC- Bereich 50 bereitgestellt wird. Für Sektorgrößen von 2K-Byte oder weniger, plus EDAC, wurde das Unterstützen von zwei Defekten als optimal gefunden.
- Die Werte in dem GA1-ZÄHLUNG-Bereich 74, dem BA1-ZÄHLUNG- Bereich 76, dem GA2-ZÄHLUNG-Bereich 48 und dem BA2-ZÄHLUNG- Bereich 80 spezifizieren Anzahlen von Byte in Vielfachen von vier. Ein Null-Wert zeigt vier Byte an. Demgemäß sind diese Werte gleich zu n/4-1, wobei n die Anzahl von Byte ist, die durch den Wert spezifiziert werden. Die BA1- und BA2-ZÄHLUNG-Bereiche 76 und 80 sind jeder fünf Bit breit, so daß sie jeder Werte enthalten können, die bis zu 128 Byte spezifizieren. Wenn ein Defekt größer ist als 128 Byte, wird er als unverwaltbar deklariert durch das gegenwärtig beschriebene Ausführungsbeispiel der Erfindung und es wird auf andere Defektverwaltungstechniken zurückgegriffen. GA1- und GA2-ZÄHLUNG-Bereiche 74 und 78 sind jeweils 11 Bit breit und können daher Werte speichern, die Anzahlen von Byte bis zu 8192 (8 K) darstellen. Dies ist viel größer als die Sektorgröße von 1 K Byte plus EDAC, aber das Erlauben zur Darstellung von bis zu 8 K Byte erlaubt die Beibehaltung des Vorsatzformates, gezeigt in Fig. 1a, als ein Standard für jede Sektorgröße bis zu 8 K.
- Bei einer Variation des Ausführungsbeispieles, gezeigt in den Fig. 1a und 1b, kann ein einzelner Defekt, der größer als 128 Byte ist, berücksichtigt werden, wenn der DATEN-Bereich keinen zweiten Defekt enthält. Bei dieser Variation, wenn solch ein großer Defekt bei der Initialisierung der Platte angetroffen wird, kann ein einzelner vordefinierter Code, einer, der nicht mit einer Byte-Kennzeichnung verwechselt werden kann, in den GA2-ZÄHLUNG-Bereich 78 geschrieben werden. Solch ein Code kann einer der verfügbaren Werte sein, die eine Byte-Kennzeichnung größer als die Sektorgröße anzeigen, oder es kann "0" sein, wenn "0" anderweitig in diesem Feld unerlaubt gemacht ist. Der Wert, der die Größe des schlechten Bereiches anzeigt, wird dann als 10-Bit breit angesehen: die fünf Bits höherer Ordnung sind in dem BA1-ZÄHLUNG-Bereich 76 plaziert und die fünf Bits niedriger Ordnung sind in dem BA2-ZÄHL- UNG-Bereich 80 plaziert. Wenn Daten von dem Sektor gelesen oder in ihn geschrieben werden sollen, erkennt die Plattensteuereinrichtung den vordefinierten Code in dem GA2-ZÄHLUNG-Bereich 78 und verkettet die Werte in dem BA1-ZÄHLUNG-Bereich 76 und dem BA2-ZÄHL- UNG-Bereich 80, um die Anzahl von Bytes, die verworfen werden sollen, zu berechnen, wenn der schlechte Bereich in dem DATEN-Bereich 28 beginnt. Ein einzelner Defekt von bis zu 4 K Bytes kann bei Verwendung dieser Variation berücksichtigt werden. Viele andere Variationen werden offensichtlich werden.
- Das Verfahren, durch das eine Sektordaten-Lese- oder Schreib-Operation durchgeführt wird auf einer Platte, die wie in den Fig. 1a und 1b formatiert ist, wird jetzt beschrieben werden mit Bezug auf Fig. 2. Eine Sektordaten-Lese-Operation wird der Einfachheit halber beschrieben werden, aber es wird verstanden werden, daß eine ähnliche Prozedur für eine Sektordaten-Schreib-Operation benutzt werden kann. Das Verfahren teilt sich im wesentlichen in vier Sektionen auf, nämlich die Set-up- Sektion 202; die erste gute und schlechte Lesesektion 204; die zweite gute und schlechte Lesesektion 206 und die letzte gute Lesesektion 208.
- In der Set-up-Sektion 202 wartet die Plattensteuereinrichtung zuerst auf einen AMF-Impuls, wie z. B. 12 (Fig. 1a). Dieser tritt auf in einem Schritt 210. In den Schritten 212 und 214 wird der ID-Bereich 46 gelesen und Byte um Byte mit gespeicherter ID-Information, die den gewünschten Sektor beschreibt, verglichen. Wenn die Sektor-ID-Information nicht mit der des gewünschten Sektors übereinstimmt, kehrt die Steuerung zu Schritt 210 zurück und der Test wird für den nächsten Sektor wiederholt. Wenn die Sektor-ID-Information mit der des gewünschten Sektors übereinstimmt, fährt die Steuerung bei Schritt 216 fort. Bei diesem Schritt wird der Defektbeschreiber 48 gelesen. Die Werte, die von dem GA1-ZÄHLUNG-Bereich 74, dem BA1-ZÄHLUNG-Bereich 76, dem GA2-ZÄHLUNG-Bereich 78 und dem BA2-ZÄHLUNG-Bereich 80 gelesen werden, werden jeweils in einem GA1-ZÄHLUNG-Register, einem BA1-ZÄHLUNG-Register, einem GA2-ZÄHLUNG-Register und einem BA2-ZÄHLUNG-Register (nicht gezeigt) gespeichert. In Schritt 216 wird auch die Sektorgröße in ein SS-Register (nicht gezeigt) gespeichert. Es kann gesehen werden, daß keine ungewöhnlich komplizierte Abgleichlogik erfordert ist, da es keine Flags zu testen gibt, um zu Bestimmen, ob irgendwelche Defekte übersprungen werden, wenn der Datenbereich gelesen wird. Ein einfacher Byte-um-Byte Bitpegelvergleicher, mit einem Gleichheits-Ausgabesignal wird ausreichen.
- In der ersten guten und schlechten Lesesektion 204 wird die Kopfleseschaltung zuerst wiedersynchronisiert mit der Taktfrequenz der Daten, die von der Platte ankommen sollen. (Schritt 220.) In Schritt 222 werden die ersten guten Datenbyte von dem GA1-Bereich 106 gelesen und die GA1-ZÄHLUNG und die SS-ZÄHLUNG, die in der Plattensteuereinrichtung gespeichert sind, werden beide um 1 dekrementiert. In einem Schritt 224 wird der Wert in dem SS-Register auf 0 getestet und die Prozedur beendet, wenn der Test positiv ist. Da wir immer noch von dem GA1-Bereich 106 lesen, kann dies nur auftreten, wenn der DATEN- Bereich 28 keine Defekte enthielt.
- In einem Schritt 226 wird die neue GA1-ZÄHLUNG auf 0 getestet und gesteuert zu Schritt 222 zurückgegeben, um das nächste gute Datenbyte zu lesen, wenn der Test negativ war. Wenn der Test positiv war, dann sind alle guten Byte in dem GA1-Bereich 106 gelesen worden und der Kopf tritt in den ersten schlechten Bereich, BA1-Bereich 108, ein. In einem Schritt 230 wird das erste schlechte Byte im BA1-Bereich 108 gelesen und verworfen. Die BA1-ZÄHLUNG wird dekrementiert und in einem Schritt 232 auf 0 getestet, und die Steuerung wird zu Schritt 230 zurückgeführt, wenn das Ergebnis negativ ist. In Schritt 230 wird das nächste schlechte Byte von dem BA1-Bereich 108 gelesen und die BA1- ZÄHLUNG wird wieder dekrementiert. Wenn der Test in Schritt 232 positiv war, dann ist der Sprung über den ersten Defekt vollständig und die Prozedur fährt mit der zweiten guten und schlechten Bereichslesesektion 206 fort.
- Bei der zweiten guten und schlechten Bereichslesesektion 206 wird die Kopfleseschaltung wieder wiedersynchronisiert mit dem Takt der eingehenden Daten in einem Schritt 240. Dies ist wünschenswert, weil die durch den Lesekopf, wenn er einen schlechten Bereich durchläuft, erzeugte Wellenform nicht nur in den Daten, die sie darstellt, unzuverlässig ist, sondern auch in dem Ort und der Zeitgebung der Taktimpulse. Wiedersynchronisation ist wünschenswert im Falle, daß die Kopfleseschaltung die eigene Taktfrequenz verloren hat.
- Der Rest der zweiten guten und schlechten Bereichslesesektion 206 ist ähnlich dem der ersten guten und schlechten Lesebereichssektion 204. In Schritt 242 wird ein Byte von dem GA2-Bereich 114 gelesen und gespeichert. Der Wert in dem SS-Register und die GA2-ZÄHLUNG werden beide dekrementiert. Der Wert in dem SS-Register wird auf 0 in Schritt 244 getestet und die Routine beendet, wenn der Test positiv ist. Wenn negativ; dann wird die GA2-ZÄHLUNG auf 0 getestet und, wenn das Ergebnis negativ ist, die Steuerung zu Schritt 242 zurückgeführt, um das nächste gute Byte von dem GA2-Bereich 114 zu lesen. Wenn das Ergebnis des Testes in Schritt 246 positiv ist, dann sind alle guten Byte in dem GA2-Bereich 114 gelesen worden und der Kopf beginnt schlechte Bytes vom BA2-Bereich 116 zu lesen. In Schritt 250 wird das erste schlechte Byte von dem BA2-Bereich 116 gelesen und verworfen und der BA2-ZÄHLUNG-Wert wird dekrementiert. Wenn die BA2-ZÄHLUNG noch nicht 0 erreicht hat (Schritt 252), dann wird die Steuerung wieder zu Schritt 250 zurückgeführt, um das nächste schlechte Byte vom BA2-Bereich 116 zu lesen und zu verwerfen.
- Wenn das Ergebnis des Testes in Schritt 252 positiv ist, d. h. der Schritt über den zweiten Effekt in dem DATEN-Bereich 28 vollständig ist, dann tritt die Prozedur in die Lesesektion 208 des letzten guten Bereiches ein. Wiedersychronisation wird zuerst in einem Schritt 260 durchgeführt, aus dem gleichen Grund, aus dem Wiedersynchronisation in Schritt 240 durchgeführt wurde. Die Schritte 262 und 264 lesen dann schrittweise gute Bytes von dem GAF-Bereich 122 aus und dekrementieren den Wert in dem SS-Register entsprechend, bis der Wert in dem SS-Register 0 erreicht. Wenn er dies tut, dann sind alle guten Bytes in dem GAF- Bereich 122 gelesen worden und die Prozedur endet. Die Plattensteuereinrichtung kann darauffolgend eine Fehlerkorrekturoperation auf all die guten Daten, die von dem GA1-Bereich 106, dem GA2-Bereich 114 und dem GAF-Bereich 122 gelesen wurden, durchführen unter Verwendung des Codes in dem EDAC-Bereich (nicht gezeigt).
- Wie zuvor erwähnt, kann das Verfahren von Fig. 2 verwendet werden für eine Sektorschreib-Datenoperation mit nur geringen Modifikationen. Insbesondere würde das Lesen und Speichern von Bytes von dem ersten guten Bereich, dargelegt in Schritt 222, geändert werden zu einem Schritt von Schreiben von Bytes zu der laufenden Kopfposition in dem ersten guten Bereich. Ähnlich würde das Lesen und Speichern der Bytes, das in Schritt 242 durchgeführt wurde, zu einem Schritt von Schreiben von Bytes in den zweiten guten Bereich geändert werden. Der Schritt von Lesen und Speichern von Bytes von dem letzten guten Bereich, durchgeführt in Schritt 262, würde ebenso zu einem Schritt von Schreiben von Bytes in den letzten guten Bereich geändert werden.
- Es kann gesehen werden, daß die obige Prozedur zum Lesen und Schreiben von Datenbytes in den Datenbereich eines Sektors, der gemäß der Erfindung formatiert ist, relativ einfach und leicht zu implementieren ist. Sie kann implementiert werden unter Verwendung einer Zustandsmaschine, und solch eine Implementation wird bevorzugt aufgrund ihrer hohen Geschwindigkeit. Eine Microcode-Implementation würde jedoch auch möglich sein.
- Ein Verfahren, bei dem eine Platte initialisiert werden kann unter Verwendung der Erfindung wird jetzt beschrieben werden mit Bezug auf Fig. 3. Grundsätzlich umfaßt es Bestimmen des Ortes und der Größe von Defekten auf einer Spur auf der Platte, und dann Formatieren der Spur unter Verwendung des Vorsatzformates, gezeigt in Fig. 1a.
- In einem Schritt 310 wird die Spur formatiert unter der Annahme, daß es keine Defekte gibt. Das heißt, Werte werden in den GA1-ZÄHL- UNG-Bereich 74 für jeden Sektor plaziert, wobei die Werte zumindest so groß wie die Sektorgröße sind und die Datenbereiche werden als 1104 aneinandergrenzende Byte formatiert (unter der Annahme, daß eine Sektorgröße ein 1 K Byte von Daten und 80 Byte von EDAC aufnimmt). Der ZWISCHENRAUM-3-Bereich 30 für jeden Sektor ist groß genug gemacht, um eine Ausdehnung des Datenbereiches 28 zu erlauben, um Defekte zu berücksichtigen. Bekannte Information wird auf alle Bereiche der Spur geschrieben.
- In einem Schritt 312 wird die Information von der Spur zurückgelesen. Sie wird mit der Information verglichen, die auf die Spur in Schritt 314 geschrieben worden war und eine Tabelle (nicht gezeigt) wird erzeugt, um anzuzeigen, welche Bytes auf der Spur fehlerhafte Information beim Lesen bereitgestellt haben.
- Die Schritte 310 bis 314 werden eine vorbestimmte Anzahl von Malen wiederholt, z. B. zehnmal, wobei die Fehlertabelle nach jeder Wiederholung aktualisiert wird, um letztlich die Anzahl von Malen anzuzeigen, die ein Fehler für jedes Byte auf der Spur erfaßt wurde. Die Fehlertabelle wird dann analysiert in einem Schritt 316, um Hardwaredefekte auf dem Medium zu identifizieren. Ein Hardwaredefekt in dem Medium wird sich gewöhnlicherweise als ein Fehler erweisen, praktisch jedesmal, wenn dieser Test durchgeführt wird. Ein Softwaredefekt wird sich gewöhnlicherweise nur bei 10% bis 20% der Wiederholungen als ein Fehler erweisen. In einem Schritt 318 wird bestimmt, ob jeder gegebene Defekt verwaltbar ist unter Verwendung der erfinderischen Technik, und wenn dies so ist, werden die geeigneten Defektdeskriptoren vorbereitet. Wenn ein Defekt nicht verwaltet werden kann unter Verwendung der erfinderischen Technik, dann werden alternative Handhabungsmechanismen spezifiziert (Schritt 320). Dies kann der Fall sein, wenn der Defekt zu groß ist, wenn der Datenbereich mehr als die Anzahl von Defekten enthält, die von dem Defektdeskriptorabschnitt des Vorsatzes unterstützt wird, wenn der Defekt in einem Vorsatzbereich auftritt, oder wenn der Defekt den Anfang eines Datenbereiches umfaßt. In dem letzten Falle würde die Formel, die verwendet wird, um den Wert zu berechnen, der in dem GA1-Zählung-Bereich 74 plaziert werden soll, eine ungültige Zahl ergeben. Zwischenraumausdehnungstechniken oder Sektorverschiebungstechniken des Standes der Technik berücksichtigen diese Typen von Defekten.
- Sobald die Defektdeskriptoren vorbereitet worden sind, wird die Spur noch einmal formatiert, dieses Mal unter Verwendung der Defektdeskriptoren (Schritt 330). Die Spur wird dann zurückgelesen (Schritt 332) und eine neue Fehlertabelle wird erzeugt (Schritt 334). Die Schritte 330 bis 334 werden eine vorbestimmte Anzahl von Malen wiederholt, wobei die Fehlertabelle in Schritt 334 bei jeder Wiederholung aktualisiert wird, bis die Fehlertabelle letztlich Werte enthält, die die Anzahl von erfaßten Fehlern in jedem Byte in jedem Sektor anzeigen. Diese Fehlertabelle wird analysiert in Schritt 336, um zu versichern, daß alle Hardwaredefekte berücksichtigt wurden. Wenn sie es nicht wurden, oder wenn zusätzliche Versicherung erwünscht ist, dann kann die gesamte Prozedur irgendeine Anzahl von Malen wiederholt werden. Der Formatierschritt 310 kann weggelassen werden während der zweiten und darauffolgenden Wiederholungen der Prozedur, wenn gewünscht, um zu versichern, daß jede Wiederholung eine formatierte Spur ergibt, die zumindest so gut wie die vorherige Wiederholung ist.
- Es sollte bemerkt werden, daß die Fehlertabelle nicht Fehlerzählungen bis zu einer Granularität so fein wie ein Byte aufrechterhalten muß. Tatsächlich würde es nicht der Mühe wert, sein solche Fehlerzählungen mit einer Granularität feiner als der, die bei den Defektdeskriptoren (z. B. eine Granularität von 4 Byte) verwendet werden wird, aufrecht zu erhalten. Das heißt, jeder Ort in der Tabelle bezieht sich auf einen Block von vier Byte und jeder Fehler, der in einem der vier Byte erscheint, inkrementiert die Zählungen an diesem Ort in der Tabelle. Der Formatierprozeß kann weiter vereinfacht werden durch Definieren der Tabelle mit einer Granularität, die noch grober ist als die des Defektdeskriptors (z. B. 12-Byte-Blöcke).
- Bei einer Variation des obigen Ausführungsbeispiels können die Schritte 314 und 334 nicht durch Byte-um-Byte-Vergleichen der von der Platte gelesenen Daten mit den ursprünglich auf die Platte geschriebenen Daten durchgeführt werden, sondern anstelle durch Verwenden des EDAC, um die Bytes, die Fehler enthielten, genau zu ermitteln. Dies kann die Plattensteuerungsvorrichtung oder die Softwareroutine, die die Initialisierungsoperation überwacht, vereinfachen, aber es reduziert die Genauigkeit des Ergebnisses, da der EDAC nicht in der Lage ist, die Orte von mehr als einer bestimmten Anzahl von fehlerhaften Bytes anzuzeigen.
- Es sollte weiter bemerkt werden, daß obwohl der Schritt 310 die Spur formatieren kann unter Verwendung der gleichen Sektorgröße, die verwendet werden wird, wenn die Platte in normalem Gebrauch ist, z. B. ein K-Byte plus EDAC, der Leseschritt 312 die Spur nicht auf die gleiche Weise lesen muß. Insbesondere kann es wünschenswert sein, die Spur als zwei sehr lange Sektoren von, z. B., jeweils 5000 Bytes zu lesen. Dies würde die Erfassung von Defekten in Vorsatzbereichen und Zwischenraumbereichen sowohl als auch in Datenbereichen erlauben. Es ist nützlich, Defekte insbesondere in dem ZWISCHENRAUM-3-Bereich 30 jedes Sektors zu erfassen, da dieser Bereich besetzt werden wird, wenn der unmittelbar vorhergehende Datenbereich benötigt sich auszudehnen, um einen Defekt in solch einem Datenbereich zu berücksichtigen.
- Es wird verstanden werden, daß das oben beschriebene Ausführungsbeispiel rein veranschaulichend für viele spezifische Ausführungsbeispiele ist, die die Prinzipien der Erfindung darstellen können. Als ein Beispiel muß die Verwendung der erfinderischen Technik nicht andere Defektverwaltungstechniken verdrängen, auch in dem gleichen Sektor, was nicht zu einem Konflikt führt. Um Defekte in dem Vorsatz zu berücksichtigen, kann z. B. das Plattensektorformat eine zweite doppelte Kopie des Vorsatzes spezifizieren, die gelesen werden wird, wenn die erste Kopie des Vorsatzes nicht wiedergewinnbar ist. Demgemäß beabsichtigt die vorhergehende Beschreibung nicht die Erfindung zu beschränken, die durch die beigefügten Ansprüche definiert wird.
Claims (21)
1. Speicherplatte, die eine verbesserte Defektverwaltung hat, wobei die
Platte eine Spur auf einer Datenoberfläche hat, wobei die Spur
einen Sektor (20) hat, der einen ersten Vorsatzbereich (24) und
einen Datenbereich (28) folgend dem ersten Vorsatzbereich aufweist,
wobei der Datenbereich potentiell einen ersten entdeckten Defekt
enthält, wobei der erste Vorsatzbereich durch Aufweisen eines
Defektdeskriptors (48) gekennzeichnet ist, der aufweist:
eine Einrichtung (74) zum Darstellen eines ersten Wertes, der die
Endposition in dem Sektor eines ersten guten Bereiches (106) von
Daten anzeigt; und
eine Einrichtung (76) zum Darstellen eines zweiten Wertes, der,
wenn der Datenbereich den ersten Defekt enthält, die Endposition
in dem Sektor eines ersten schlechten Bereiches (108) variabler
Länge anzeigt, der unmittelbar dem ersten guten Bereich folgt, und
der den ersten Defekt enthält.
2. Speicherplatte gemäß Anspruch 1, worin der Sektor einen zweiten
Vorsatzbereich zwischen dem ersten Vorsatzbereich und dem
Datenbereich aufweist, wobei der zweite Vorsatzbereich auch den
Defektdeskriptor umfaßt.
3. Speicherplatte gemäß Anspruch 1, worin der erste Wert die Anzahl
von Bytes in dem ersten guten Bereich anzeigt, und wobei der
zweite Wert die Anzahl von Bytes in dem ersten schlechten Bereich
anzeigt.
4. Speicherplatte gemäß Anspruch 3, worin der erste Wert g/4-1 ist,
wobei g die Anzahl von Bytes in dem ersten guten Bereich ist, und
worin der zweite Wert b/4-1 ist, wobei b die Anzahl von Bytes in
dem ersten schlechten Bereich ist.
5. Speicherplatte gemäß Anspruch 1, worin der erste Wert eine
gegebene Funktion der Anzahl von Bytes in dem ersten guten Bereich ist,
wenn der Datenbereich den ersten Defekt enthält, oder die
gegebene Funktion einer Anzahl von Bytes, die zumindest so groß wie die
Sektorgröße ist, wenn der Datenbereich nicht den ersten Defekt
enthält.
6. Speicherplatte gemäß Anspruch 1, worin der Datenbereich potentiell
einen zweiten entdeckten Defekt enthält, der dem ersten Defekt
folgt, und worin der Defektdeskriptor weiterhin aufweist:
eine Einrichtung (78) zum Darstellen eines dritten Wertes, der, wenn
der Datenbereich den ersten Defekt enthält, die Endposition in dem
Sektor eines zweiten guten Bereiches (114) von Daten anzeigt, der
dem ersten schlechten Bereich folgt; und
eine Einrichtung (80) zum Darstellen eines vierten Wertes, der,
wenn der Datenbereich sowohl den ersten Defekt als auch den
zweiten Defekt enthält, die Endposition in dem Sektor eines zweiten
schlechten Bereiches (116) variabler Länge anzeigt, der unmittelbar
dem zweiten guten Bereich folgt, und der den zweiten Defekt
enthält.
7. Speicherplatte gemäß Anspruch 6, worin der erste Wert eine
gegebene Funktion der Anzahl von Bytes in dem ersten guten Bereich ist,
wenn der Datenbereich den ersten Defekt enthält, oder die
gegebene Funktion der Anzahl von Bytes, die zumindest so groß wie die
Sektorgröße ist, wenn der Datenbereich nicht irgendeinen Defekt
enthält;
worin der zweite Wert die gegebene Funktion der Anzahl von Bytes
in dem ersten schlechten Bereich ist, wenn der Datenbereich den
ersten Defekt enthält;
worin der dritte Wert die gegebene Funktion der Anzahl von Bytes
in dem zweiten guten Bereich ist, wenn der Datenbereich sowohl
den ersten als auch den zweiten Defekt enthält, oder die gegebene
Funktion einer Anzahl von Bytes, zumindest so groß wie die
Sektorgröße minus der Anzahl von Bytes in dem ersten guten Bereich,
wenn der Datenbereich den ersten Defekt enthält, aber nicht den
zweiten Defekt; und
worin der vierte Wert die gegebene Funktion der Anzahl von Bytes
in dem zweiten schlechten Bereich ist, wenn der Datenbereich
sowohl den ersten Defekt als auch den zweiten Defekt enthält.
8. Speicherplatte gemäß Anspruch 6, worin der erste Wert eine
gegebene Funktion der Anzahl von Bytes in dem ersten guten Bereich ist,
wenn der Datenbereich den ersten Defekt enthält, oder die
gegebene Funktion einer Anzahl von Bytes, die zumindest so groß wie die
Sektorgröße ist, wenn der Datenbereich nicht irgendeinen Defekt
enthält;
worin der zweite Wert die gegebene Funktion der Anzahl von Bytes
in dem ersten schlechten Bereich ist, wenn der Datenbereich den
ersten Defekt enthält, und der erste schlechte Bereich kleiner als
eine vorbestimmte Größe ist;
worin der dritte Wert (a) die gegebene Funktion der Anzahl von
Bytes in dem zweiten guten Bereich ist, wenn der Datenbereich
sowohl den ersten Defekt als auch den zweiten Defekt enthält, (b)
die gegebene Funktion eine Anzahl von Bytes, die zumindest so
groß wie die Sektorgröße minus der Anzahl von Bytes in dem
ersten guten Bereich ist, wenn der Datenbereich den ersten Defekt
enthält, aber nicht den zweiten Defekt enthält, und der erste
schlechte Bereich kleiner als die vorbestimmte Größe ist, oder (c)
ein vorbestimmter Code, wenn der Datenbereich den ersten Defekt
enthält, aber nicht den zweiten Defekt enthält und der erste
schlechte Bereich zumindest so groß wie die vorbestimmte Größe ist;
worin der vierte Wert die gegebene Funktion der Anzahl von Bytes
in dem zweiten schlechten Bereich ist, wenn der Datenbereich
sowohl den ersten Defekt als auch den zweiten Defekt enthält; und
worin, wenn der Datenbereich den ersten Defekt enthält, aber nicht
den zweiten Defekt enthält, und der erste schlechte Bereich
zumindest so groß wie die vorbestimmte Größe ist, der zweite Wert und
der vierte Wert in Kombination einen Wert ergeben, der gleich der
gegebenen Funktion der Anzahl von Bytes in dem ersten schlechten
Bereich ist.
9. Speicherplatte gemäß Anspruch 1, worin der erste Vorsatzbereich
weiter eine Einrichtung (50) zum Darstellen eines
Fehlerkontrollcodes aufweist, der nur Bits in dem ersten Vorsatzbereich abdeckt.
10. Speicherplatte gemäß Anspruch 1, die weiterhin, wenn der
Datenbereich den ersten Defekt enthält, eine Synchronisationsmarkierung
(112) aufweist, die dem ersten schlechten Bereich in dem
Datenbereich folgt.
11. Speicherplatte gemäß Anspruch 1, worin die Einrichtung zum
Darstellen eines ersten Wertes einen GA1-Zählung-Bereich (74) aufweist,
der einen Wert enthält, der die Anzahl von Bytes anzeigt, die in
dem ersten guten Bereich (106) in dem Datenbereich existieren, und
worin die Einrichtung zum Darstellen eines zweiten Wertes einen
BA1-Zählung-Bereich (76) aufweist, der einen Wert enthält, der die
Anzahl von Bytes, die in dem ersten schlechten Bereich (108)
variabler Länge existieren, anzeigt, wenn solch ein erster schlechter
Bereich existiert, unmittelbar dem ersten guten Bereich in dem
Datenbereich folgend,
wobei die Defektdeskription weiterhin aufweist:
einen GA2-Zählung-Bereich (78), der einen Wert enthält, der die
Anzahl von Bytes anzeigt, die in einem zweiten guten Bereich (114)
existieren, wenn solch ein zweiter guter Bereich existiert, folgend
dem ersten schlechten Bereich in dem Datenbereich; und
einen BA2-Zählung-Bereich (80), der einen Wert enthält, der die
Anzahl von Bytes anzeigt, die in einem zweiten schlechten Bereich
(116) variabler Länge existieren, wenn solch ein zweiter schlechter
Bereich existiert, unmittelbar folgend dem zweiten guten Bereich in
dem Datenbereich.
12. Speicherplatte gemäß Anspruch 11, worin die Werte in dem GA1-
Zählung-Bereich, dem BA1-Zählung-Bereich, dem GA2-Zählung-
Bereich und dem BA2-Zählung-Bereich Anzahlen von Bytes in
Vielfachen von vier anzeigen.
13. Speicherplatte gemäß Anspruch 11, worin, wenn der Datenbereich
einen entdeckten Defekt enthält, der Wert in dem GA1-Zählung-
Bereich g&sub1;/4-1 ist, der Wert in dem BA1-Zählung-Bereich b&sub1;/4-1 ist,
der Wert in dem GA2-Zählung-Bereich g&sub2;/4-1 ist, und der Wert in
dem BA2-Zählung-Bereich b&sub2;/4-1 ist, wobei g&sub1; die Anzahl von Bytes
in dem ersten guten Bereich ist, b&sub1; die Anzahl von Bytes in dem
ersten schlechten Bereich ist, g&sub2; die Anzahl von Bytes in dem
zweiten guten Bereich ist, und b&sub2; die Anzahl von Bytes in dem
zweiten schlechten Bereich ist; und,
wenn der Datenbereich nicht irgendeinen entdeckten Defekt enthält,
der Wert in dem GA1-Zählung-Bereich zumindest so groß ist wie
s/4-1, wobei s die Sektorgröße ist.
14. Speicherplatte gemäß Anspruch 12, worin der GA1-Zählung-Bereich
die 11 Bits höherer Ordnung eines ersten 2-Byte-Defektzeigers (70)
in dem Defektdeskriptor besetzt,
worin der BA1-Zählung-Bereich die 5 Bits niedriger Ordnung des
ersten Defektzeigers in dem Defektdeskriptor besetzt,
worin der GA2-Zählung-Bereich die 11 Bits höherer Ordnung eines
zweiten 2-Byte-Defektzeigers (72) in dem Defektdeskriptor besetzt,
und
worin der BA2-Zählung-Bereich die 5 Bits niedriger Ordnung des
zweiten Defektzeigers in dem Defektdeskriptor besetzt.
15. Speicherplatte gemäß Anspruch 1, worin der Datenbereich in Folge
aufweist:
ein erstes Synchronisationsgebiet (104);
den ersten guten Bereich (106);
den ersten schlechten Bereich (108), wenn der Datenbereich den
ersten entdeckten Defekt enthält;
ein zweites Synchronisationsgebiet (112), wenn der Datenbereich den
ersten entdeckten Defekt enthält;
einen zweiten guten Bereich (114), wenn der Datenbereich den
ersten entdeckten Defekt enthält;
einen zweiten schlechten Bereich (116), der einen zweiten entdeckten
Defekt enthält, wenn der Datenbereich sowohl den ersten entdeckten
Defekt als auch den zweiten entdeckten Defekt enthält, wobei der
zweite schlechte Bereich unmittelbar dem zweiten guten Bereich
folgt;
ein drittes Synchronisationsgebiet (120), wenn der Datenbereich
sowohl den ersten entdeckten Defekt als auch den zweiten
entdeckten Defekt enthält; und
einen dritten guten Bereich (122), wenn der Datenbereich sowohl
den ersten entdeckten Defekt als auch den zweiten entdeckten
Defekt enthält;
worin der Defektdeskriptor (48) aufweist:
einen ersten 2-Byte-Defektzeiger (70), wobei die 11 Bits (74)
höherer Ordnung des ersten 2-Byte-Defektzeigers einen Wert g&sub1;/4-1
enthalten und die 5 Bits (76) niedriger Ordnung des ersten 2-Byte-
Defektzeigers einen Wert b&sub1;/4-1 enthalten, wobei g&sub1; die Anzahl von
Bytes in dem ersten guten Bereich ist, wenn der Datenbereich den
ersten entdeckten Defekt enthält, oder eine Zahl, zumindest so groß
wie die Sektorgröße, wenn der Datenbereich nicht irgendeinen
entdeckten Defekt enthält, wobei b&sub1; die Anzahl von Bytes in dem
ersten schlechten Bereich ist, wenn der Datenbereich den ersten
entdeckten Defekt enthält; und
ein zweiter 2-Byte-Defektzeiger (72), der dem ersten
2-Byte-Defektzeiger folgt, wobei die 11 Bits (78) höherer Ordnung des zweiten 2-
Byte-Defektzeigers einen Wert g&sub2;/4-1 enthalten und die 5 Bits (80)
niedriger Ordnung des zweiten 2-Byte-Defektzeigers einen Wert b&sub2;/4-
1 enthalten, wobei g&sub2; die Anzahl von Bytes in dem zweiten guten
Bereich ist, wenn der Datenbereich den zweiten entdeckten Defekt
enthält, oder ein Wert, der zumindest so groß wie die Sektorgröße
minus der Anzahl von Bytes in dem ersten guten Bereich ist, wenn
der Datenbereich nicht den zweiten entdeckten Defekt aufweist,
wobei b&sub2; die Anzahl von Bytes in dem zweiten schlechten Bereich
ist, wenn der Datenbereich den zweiten entdeckten Defekt enthält,
wobei der Vorsatzbereich weiterhin einen Fehlerkontrollcode (50)
aufweist, der zumindest die Bits in dem Defektdeskriptor abdeckt,
und der keine Bits außerhalb des Vorsatzbereiches abdeckt,
wobei die Einrichtung zum Darstellen eines ersten Wertes die 11
Bits höherer Ordnung des ersten Defektzeigers aufweist und die
Einrichtung zum Darstellen eines zweiten Wertes die 5 Bits niedriger
Ordnung des ersten Defektzeigers aufweist.
16. Verfahren zum Lesen von Daten von einem Sektor (20) auf einer
Spur auf einer Speicherplatte, wobei der Sektor einen Datenbereich
(28) aufweist, der die folgenden Schritte aufweist:
Lesen (216) von der Speicherplatte eines Wertes, der die Anzahl
von Datenbytes anzeigt, die in einem ersten guten Bereich (106) in
dem Datenbereich existieren, und, wenn der Datenbereich einen
ersten schlechten Bereich (108) umfaßt, der dem ersten guten
Bereich folgt, einen Wert, der die Anzahl von Bytes anzeigt, die in
dem ersten schlechten Bereich existieren;
aufeinanderfolgendes Lesen (222, 224, 226) erster guter Datenbytes
von dem ersten guten Bereich, wobei der Schritt des
aufeinanderfolgenden Lesens erster guter Bytes, endet, wenn die Anzahl von
ersten guten gelesenen Bytes die Sektorgröße oder die Anzahl von
guten Bytes in dem ersten guten Bereich, was immer kleiner ist,
erreicht;
Beenden (224) des Verfahrens, wenn die Anzahl von ersten guten
gelesenen Bytes gleich der Sektorgröße ist oder sie überschreitet;
aufeinanderfolgendes Lesen (230, 232) erster schlechter Bytes von
Daten von dem ersten schlechten Bereich, wobei der Schritt
aufeinanderfolgenden Lesens erster schlechter Bytes endet, wenn die
Anzahl von ersten schlechten gelesenen Bytes die Anzahl von
schlechten Bytes in dem ersten schlechten Bereich erreicht; und
aufeinanderfolgendes Lesen (262, 264) letzter guter Datenbytes von
einem letzten guten Bereich (122), der dem ersten schlechten
Bereich folgt, wobei der Schritt des Lesens der letzten guten Bytes
endet, wenn die Gesamtanzahl guter gelesener Bytes von dem
Datenbereich die Sektorgröße erreicht.
17. Verfahren gemäß Anspruch 16, das weiterhin aufweist:
den Schritt des Lesens (216) von der Speicherplatte eines Wertes,
der die Anzahl von Datenbytes anzeigt, die in einem zweiten guten
Bereich (114) in dem Datenbereich existieren und, wenn der
Datenbereich einen zweiten schlechten Bereich (116) folgend dem zweiten
guten Bereich aufweist, eines Wertes, der die Anzahl von Bytes
anzeigt, die in dem zweiten schlechten Bereich existieren;
und zwischen dem Schritt aufeinanderfolgenden Lesens erster
schlechter Bytes und dem Schritt aufeinanderfolgenden Lesens letzter
guter Bytes, die Schritte von:
aufeinanderfolgendem Lesen (242, 244, 246) zweiter guter Datenbytes
von dem zweiten guten Bereich, wobei der Schritt
aufeinanderfolgenden Lesens zweiter guter Bytes endet, wenn die Gesamtanzahl guter
gelesener Bytes die Sektorgröße erreicht, oder wenn die Anzahl
zweiter guter gelesener Bytes die Anzahl guter Bytes in dem zweiten
guten Bereich erreicht, was immer als erstes auftritt;
Beenden des Verfahrens, wenn die Gesamtanzahl guter gelesener
Bytes gleich der Sektorgröße ist oder sie überschreitet;
aufeinanderfolgendes Lesen (250, 252) zweiter schlechter Datenbytes
von dem zweiten schlechten Bereich, wobei der Schritt
aufeinanderfolgenden Lesens zweiter schlechter Bytes endet, wenn die Anzahl
von zweiten schlechten gelesenen Bytes die Anzahl von schlechten
Bytes in dem zweiten schlechten Bereich erreicht.
18. Verfahren gemäß Anspruch 16, das weiterhin den Schritt (260) von
Wiedersynchronisieren der Kopfleseschaltung vor dem Schritt des
aufeinanderfolgenden Lesens letzter guter Bytes aufweist.
19. Verfahren gemäß Anspruch 16, das weiterhin aufweist:
zwischen dem Schritt des Lesens von der Speicherplatte und dem
Schritt des aufeinanderfolgenden Lesens erster guter Bytes den
Schritt des Speicherns (216) als ein GA1-Wert eines Wertes, der
entweder die Anzahl von Bytes in dem ersten guten Bereich anzeigt,
wenn der Datenbereich einen ersten schlechten Bereich aufweist,
oder einer Anzahl von Bytes, die zumindest so groß wie die
Sektorgröße ist, wenn der Datenbereich nicht einen ersten schlechten
Bereich aufweist, und wenn der Datenbereich einen ersten
schlechten Bereich aufweist, den Schritt (216) des Speicherns als einen
BA1-Wert eines Wertes, der die Anzahl von Bytes in dem ersten
schlechten Bereich anzeigt; und
vor dem Schritt des Lesens erster guter Bytes, der Schritt (216a) des
Speicherns als einen SS-Wert eines Wertes, der die Sektorgröße
anzeigt;
worin der Schritt des aufeinanderfolgenden Lesens erster guter Bytes
den Schritt des aufeinanderfolgenden Dekrementierens (222) des
GA1-Wertes und des SS-Wertes in Übereinstimmung mit der Anzahl
erster guter gelesener Bytes und Beenden (224, 226) des Schrittes
aufeinanderfolgenden Lesens erster guter Bytes aufweist, wenn der
GA1-Wert oder der SS-Wert 0 erreicht, was immer als erstes
auftritt;
worin der Schritt aufeinanderfolgenden Lesens erster schlechter Bytes
den Schritt aufeinanderfolgenden Dekrementierens (230) des BA1-
Wertes in Übereinstimmung mit der Anzahl von ersten schlechten
gelesenen Bytes und Beenden (232) des Schrittes
aufeinanderfolgenden Lesens erster schlechter Bytes aufweist, wenn der BA1-Wert 0
erreicht; und
worin der Schritt aufeinanderfolgenden Lesens letzter guter Bytes
den Schritt aufeinanderfolgenden Dekrementierens (262) des SS-
Wertes in Übereinstimmung mit der Anzahl letzter guter gelesener
Bytes und Beenden (264) des Verfahrens aufweist, wenn der SS-
Wert 0 erreicht.
20. Verfahren gemäß Anspruch 16, weiter zum Initialisieren der
Speicherplatte vor dem ersten Leseschritt, das weiterhin die Schritte
aufweist:
Bestimmen (310, 312, 314, 316), ob die Speicherplatte einen ersten
Defekt enthält, und, wenn dem so ist, des Ortes und der Größe
solch eines ersten Defektes;
Schreiben (330) in den Vorsatzbereich (24) eines Sektors (20), der
den ersten Defekt enthält, eines ersten Wertes, der die Endposition
in dem Sektor eines ersten guten Bereiches (106) von Daten anzeigt;
und
Schreiben (330) in den Vorsatzbereich eines zweiten Wertes, der die
Endposition in dem Sektor eines ersten schlechten Bereiches (108)
variabler Länge anzeigt, der den ersten Defekt enthält.
21. Verfahren gemäß Anspruch 20, das weiterhin die Schritte aufweist:
Bestimmen (310, 312, 314, 316), ob die Speicherplatte einen zweiten
Defekt enthält, der dem ersten Defekt folgt in dem gleichen Sektor
wie der erste Defekt, und, wenn dem so ist, des Ortes und der
Größe solch eines zweiten Defektes;
Schreiben (330) in den Vorsatzbereich des Sektors eines dritten
Wertes, der die Endposition in dem Sektor eines zweiten guten
Bereiches (114) von Daten anzeigt; und
Schreiben (330) in den Vorsatzbereich eines vierten Wertes, der die
Endposition in dem Sektor eines zweiten schlechten Bereiches (116)
anzeigt, der den zweiten Defekt enthält.
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US07/077,252 US4811124A (en) | 1987-07-24 | 1987-07-24 | Defect skipping mechanism for disk drives |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| DE3884875D1 DE3884875D1 (de) | 1993-11-18 |
| DE3884875T2 true DE3884875T2 (de) | 1994-04-14 |
Family
ID=22136983
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE88110701T Expired - Fee Related DE3884875T2 (de) | 1987-07-24 | 1988-07-05 | Mechanismus zum Überspringen von Fehlern bei Plattengeräten. |
Country Status (6)
| Country | Link |
|---|---|
| US (1) | US4811124A (de) |
| EP (1) | EP0300264B1 (de) |
| JP (1) | JP2764097B2 (de) |
| AT (1) | ATE95939T1 (de) |
| DE (1) | DE3884875T2 (de) |
| ES (1) | ES2045023T3 (de) |
Families Citing this family (65)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE3787452T2 (de) * | 1986-12-19 | 1994-01-13 | Matsushita Electric Ind Co Ltd | Löschbare optische Platte und Gerät zur Aufnahme und Wiedergabe optischer Informationen mit Einrichtung zur Handhabung defekter Sektoren. |
| US5113061A (en) * | 1987-02-13 | 1992-05-12 | Olympus Optical Co., Ltd. | Optical card having an identifier for identifying track construction and apparatus for writing and/or reading data on and/or from the optical card |
| JPH01128266A (ja) * | 1987-11-13 | 1989-05-19 | Pioneer Electron Corp | 書込み可能型ディスク用ドライブ装置の制御方法 |
| US5146571A (en) * | 1988-03-28 | 1992-09-08 | Emc Corporation | Remapping defects in a storage system through the use of a tree structure |
| JPH0223417A (ja) * | 1988-07-13 | 1990-01-25 | Matsushita Electric Ind Co Ltd | 情報記録方式と情報記録媒体 |
| US5023876A (en) * | 1988-10-31 | 1991-06-11 | Pioneer Electronic Corporation | Method and apparatus for detecting finally recorded sector |
| JPH02193335A (ja) * | 1989-01-20 | 1990-07-31 | Csk Corp | カード型光記録媒体 |
| US7190617B1 (en) | 1989-04-13 | 2007-03-13 | Sandisk Corporation | Flash EEprom system |
| US5535328A (en) * | 1989-04-13 | 1996-07-09 | Sandisk Corporation | Non-volatile memory system card with flash erasable sectors of EEprom cells including a mechanism for substituting defective cells |
| US7447069B1 (en) | 1989-04-13 | 2008-11-04 | Sandisk Corporation | Flash EEprom system |
| EP0675502B1 (de) | 1989-04-13 | 2005-05-25 | SanDisk Corporation | EEPROM-System mit aus mehreren Chips bestehender Blocklöschung |
| US5065389A (en) * | 1989-08-24 | 1991-11-12 | U.S. Philips Corporation | Information recording and read device, information recording device, and record carrier obtained by means of one of the device |
| JP2563138B2 (ja) * | 1989-12-19 | 1996-12-11 | 株式会社日立製作所 | 情報記録単位の先頭検出方法,記録再生装置およびディスク記録媒体 |
| US5210660A (en) * | 1990-01-17 | 1993-05-11 | International Business Machines Corporation | Sectored servo independent of data architecture |
| WO1992000589A1 (en) * | 1990-06-25 | 1992-01-09 | Maxtor Corporation | Read/write control for disk drive |
| US5485439A (en) * | 1990-10-30 | 1996-01-16 | Matsushita Electric Industrial Co., Ltd. | Method for recording/reproducing information and apparatus therefor |
| US5241531A (en) * | 1990-11-07 | 1993-08-31 | Matsushita Graphic Communication Systems, Inc. | Storage medium having read/write storage region and read-only storage region and a method for managing defective sectors in the storage medium |
| US5305302A (en) * | 1990-12-04 | 1994-04-19 | Conner Peripherals, Inc. | Track format and record carrier system for split data field support |
| US5517631A (en) * | 1991-02-01 | 1996-05-14 | Quantum Corporation | Miniature disk drive having embedded sector servo with split data fields and automatic on-the-fly data block sequencing |
| US5324926A (en) * | 1991-03-15 | 1994-06-28 | Olympus Optical Co., Ltd. | Optical card having alternative information record region |
| EP0517473B1 (de) | 1991-06-04 | 1997-03-19 | Quantum Corporation | Miniatureplattenantriebsgerät mit eingebettetem Servosector und trennbaren Datenfeldern und sofortige Datenblockreihenfolge |
| JP2625609B2 (ja) * | 1991-07-10 | 1997-07-02 | インターナショナル・ビジネス・マシーンズ・コーポレイション | ディスク記憶装置 |
| US5341378A (en) * | 1992-02-28 | 1994-08-23 | Ampex Systems Corporation | Data recording system having improved automatic rewrite capability and method of rewriting |
| US5740358A (en) | 1992-06-25 | 1998-04-14 | Cirrus Logic, Inc. | Defect management and split field processing in disk storage systems |
| JP3078686B2 (ja) * | 1992-10-05 | 2000-08-21 | 三菱電機株式会社 | 光ディスク、光ディスク駆動装置および光ディスクの書き込み読み出し方法 |
| US7548497B2 (en) * | 1992-10-05 | 2009-06-16 | Mitsubishi Denki Kabushiki Kaisha | Optical disk and optical disk drive device |
| US6529451B2 (en) * | 1992-10-05 | 2003-03-04 | Mitsubishi Denki Kabushiki Kaisha | Optical disk and optical disk drive device |
| US6198589B1 (en) * | 1992-12-24 | 2001-03-06 | Sony Corporation | Video tape recording apparatus |
| JP2881092B2 (ja) * | 1993-05-25 | 1999-04-12 | 富士通株式会社 | 可換記憶媒体のファイル管理方法 |
| MY112118A (en) * | 1993-12-23 | 2001-04-30 | Hitachi Global Storage Tech Netherlands B V | System and method for skip-sector mapping in a data recording disk drive. |
| US5523903A (en) * | 1993-12-23 | 1996-06-04 | International Business Machines Corporation | Sector architecture for fixed block disk drive |
| JP3176236B2 (ja) * | 1994-11-30 | 2001-06-11 | 株式会社ソニー・コンピュータエンタテインメント | 信号再生装置及び信号再生方法 |
| JP3578498B2 (ja) * | 1994-12-02 | 2004-10-20 | 株式会社ソニー・コンピュータエンタテインメント | 画像情報処理装置 |
| JP3647487B2 (ja) * | 1994-12-02 | 2005-05-11 | 株式会社ソニー・コンピュータエンタテインメント | テクスチャマッピング装置 |
| US5757376A (en) * | 1994-12-02 | 1998-05-26 | Sony Corporation | Method of producing image data and associated recording medium |
| US5949409A (en) * | 1994-12-02 | 1999-09-07 | Sony Corporation | Image processing in which the image is divided into image areas with specific color lookup tables for enhanced color resolution |
| US5621736A (en) * | 1995-04-12 | 1997-04-15 | Winbond Electronics Corp. | Formatting of a memory having defective cells |
| KR970008064A (ko) * | 1995-07-25 | 1997-02-24 | 김광호 | 컴팩트 디스크 플레이어의 흠집부분 재생방지방법 |
| KR0162606B1 (ko) * | 1995-12-15 | 1999-01-15 | 김광호 | 하드디스크 드라이브에 있어서 섹터펄스 발생회로 및 방법 |
| CN1296931C (zh) | 1996-09-30 | 2007-01-24 | 松下电器产业株式会社 | 一种在盘上记录av数据的记录方法和信息处理系统 |
| JPH10134517A (ja) * | 1996-10-29 | 1998-05-22 | Mitsubishi Electric Corp | フォーマット書き込み装置及びフレキシブルディスク |
| US5844911A (en) * | 1996-12-12 | 1998-12-01 | Cirrus Logic, Inc. | Disc storage system with spare sectors dispersed at a regular interval around a data track to reduced access latency |
| US5895438A (en) * | 1996-12-23 | 1999-04-20 | Hitachi Computer Products (America ), Inc. | Inline disk tester |
| US6134063A (en) * | 1997-12-30 | 2000-10-17 | Lsi Logic Corporation | Automated multi-track transfers |
| KR20010040467A (ko) * | 1998-02-02 | 2001-05-15 | 가나이 쓰토무 | 판독의 자동 교체 방법 및 이를 이용한 자기 디스크 장치 |
| KR100274400B1 (ko) | 1998-05-09 | 2000-12-15 | 구자홍 | 차등구획된 여유영역을 갖는 광기록매체의 제조방법,기록/재생방법 및 그 장치 |
| US6535995B1 (en) | 1999-03-10 | 2003-03-18 | International Business Machines Corporation | Prototype-based virtual in-line sparing |
| US6546499B1 (en) | 1999-10-14 | 2003-04-08 | International Business Machines Corporation | Redundant array of inexpensive platters (RAIP) |
| US6954410B2 (en) * | 2000-01-20 | 2005-10-11 | Hitachi, Ltd. | Information recording and reproducing apparatus for updating the waveform of a laser based on position information |
| US7514037B2 (en) * | 2002-08-08 | 2009-04-07 | Kobe Steel, Ltd. | AG base alloy thin film and sputtering target for forming AG base alloy thin film |
| JP2004206861A (ja) * | 2002-12-13 | 2004-07-22 | Matsushita Electric Ind Co Ltd | 空き領域の検索方法および検索装置、記録済み領域の配置の検証方法および検証装置 |
| US7440224B2 (en) * | 2006-01-23 | 2008-10-21 | Toshiba Corporation | Disk drive servo |
| US8089715B1 (en) * | 2006-02-01 | 2012-01-03 | Link—A—Media Devices Corporation | Split sector formatting of storage disks |
| US7721049B2 (en) * | 2006-03-27 | 2010-05-18 | Kabuhsiki Kaisha Toshiba | Disk drive write method |
| US7468859B2 (en) * | 2006-05-31 | 2008-12-23 | Kabushiki Kaisha Toshiba | Voice coil motor effective resistance determination |
| US7436616B2 (en) * | 2006-05-31 | 2008-10-14 | Toshiba Corporation | Current pulsing for unloading |
| US20070279782A1 (en) * | 2006-05-31 | 2007-12-06 | Rydhan Abdul R | Method and apparatus for determining offset between read and write transducers in a disk drive |
| US20070279781A1 (en) * | 2006-05-31 | 2007-12-06 | Toshiba America Information Systems, Inc. | Channel training method and apparatus |
| US7457066B2 (en) * | 2006-05-31 | 2008-11-25 | Kabushiki Kiasha Toshiba | Method and apparatus for phase-shift null-burst-pattern |
| US20070279790A1 (en) * | 2006-05-31 | 2007-12-06 | Tanner Brian K | Adjustable output voltage regulator for disk drive |
| US7453660B2 (en) * | 2006-05-31 | 2008-11-18 | Kabushiki Kaisha Toshiba | Shock feed forward adaptive filters |
| US20070279788A1 (en) * | 2006-05-31 | 2007-12-06 | Toshiba America Information Systems, Inc. | Method and apparatus to perform defect scanning |
| US8483649B2 (en) * | 2007-05-18 | 2013-07-09 | Argon St | System and method for an energy efficient RF transceiver |
| KR20120067055A (ko) * | 2010-12-15 | 2012-06-25 | 삼성전자주식회사 | 디펙 제어방법과 상기 방법을 수행할 수 있는 장치들 |
| US10628246B1 (en) | 2013-05-20 | 2020-04-21 | The Boeing Company | Methods and systems for prioritizing corrective actions in a troubleshooting chart |
Family Cites Families (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3771143A (en) * | 1972-06-01 | 1973-11-06 | Burroughs Corp | Method and apparatus for providing alternate storage areas on a magnetic disk pack |
| US4214280A (en) * | 1978-05-30 | 1980-07-22 | Xerox Corporation | Method and apparatus for recording data without recording on defective areas of a data recording medium |
| JPS5751162U (de) * | 1980-09-09 | 1982-03-24 | ||
| US4434487A (en) * | 1981-10-05 | 1984-02-28 | Digital Equipment Corporation | Disk format for secondary storage system |
| US4549295A (en) * | 1983-06-21 | 1985-10-22 | International Business Machines Corporation | System for identifying defective media in magnetic tape storage systems |
| US4736352A (en) * | 1983-11-25 | 1988-04-05 | Matsushita Electric Industrial Co., Ltd. | Optical recording medium and apparatus for recording and reproducing data therein |
-
1987
- 1987-07-24 US US07/077,252 patent/US4811124A/en not_active Expired - Lifetime
-
1988
- 1988-07-05 EP EP88110701A patent/EP0300264B1/de not_active Expired - Lifetime
- 1988-07-05 DE DE88110701T patent/DE3884875T2/de not_active Expired - Fee Related
- 1988-07-05 ES ES88110701T patent/ES2045023T3/es not_active Expired - Lifetime
- 1988-07-05 AT AT88110701T patent/ATE95939T1/de not_active IP Right Cessation
- 1988-07-21 JP JP63182775A patent/JP2764097B2/ja not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| JP2764097B2 (ja) | 1998-06-11 |
| JPS6450285A (en) | 1989-02-27 |
| US4811124A (en) | 1989-03-07 |
| ES2045023T3 (es) | 1994-01-16 |
| EP0300264A3 (en) | 1990-02-14 |
| DE3884875D1 (de) | 1993-11-18 |
| EP0300264B1 (de) | 1993-10-13 |
| EP0300264A2 (de) | 1989-01-25 |
| ATE95939T1 (de) | 1993-10-15 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE3884875T2 (de) | Mechanismus zum Überspringen von Fehlern bei Plattengeräten. | |
| DE69026652T2 (de) | Zusammenfügung kurzer Aufzeichnungen in einem einzelnen Datenblock zur Aufzeichnung auf einem Aufzeichnungsmedium | |
| DE3134947C2 (de) | ||
| DE69522318T2 (de) | System und verfahren zum kodieren einer servoadresse | |
| DE19522497B4 (de) | Magnetplatte, Magnetplattenlaufwerk und Datenzugriffsverfahren | |
| DE69025267T2 (de) | Sektorsprung mit Adress-Kollisions-Dekodierung für Aufzeichnungsträger des Wormtyps | |
| DE3783253T2 (de) | Fehlerkorrekturverfahren. | |
| DE69028852T2 (de) | Verfahren und vorrichtung zur synchronisierung der taktsignale für aufzeichnungsgerät mit schrägspurverfahren | |
| DE69318970T2 (de) | Inhaltverzeichnisformat eines datenaufzeichnungssystem | |
| DE69129320T2 (de) | Verfahren und Gerät zum schnellen Zugriff auf einem logischen Block auf einem Bandmedium | |
| DE69324800T2 (de) | Digitales servospurfomat | |
| DE69325831T2 (de) | Transparente Dateimarkierung | |
| DE69318967T2 (de) | Aufzeichnungssystem für daten mit verbesserten eigenschaften der longitudinal- und schraegspursuche | |
| DE3889883T2 (de) | Verfahren zur Behandlung von Informationen, betreffend Fehler auf Speichermedien. | |
| DE3855806T2 (de) | Synchronisierung für gespeicherte daten | |
| DE69229300T2 (de) | Methode und Apparatur zur Datenaufzeichnung und/oder Wiedergabe | |
| DE2254696A1 (de) | Schaltungsanordnung und verfahren zur neuorientierung nach einer fehlbedingung in einem speichersystem | |
| DE69327934T2 (de) | Magnetbandaufnahme-/Wiedergabegerät | |
| DE69125299T2 (de) | Verfahren zum Lesen eines Synchronisierungssignals von einem Aufnahmemedium und Apparat dafür | |
| DE68923568T2 (de) | Informationsspeichermedium und Aufzeichnungs-/Wiedergabegerät damit. | |
| DE69314477T2 (de) | Longitudinalspurformat für schrägspurdatenaufzeichnungssystem | |
| DE69319333T2 (de) | Bandaufzeichnungssystem mit verbesserter buchhaltungsfaehigkeit | |
| DE69026571T2 (de) | System mit einer multifunktionalen Platte und derselben Antrieb | |
| DE69030625T2 (de) | Doppelkanal-aufzeichnungsgerät mit schraubenabtastung | |
| DE69322623T2 (de) | Datenaufzeichnungssystem mit demarkfähihkeit und verfahren |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 8364 | No opposition during term of opposition | ||
| 8328 | Change in the person/name/address of the agent |
Free format text: DERZEIT KEIN VERTRETER BESTELLT |
|
| 8339 | Ceased/non-payment of the annual fee |