Diskussion:Floppy Disk Controller

Aus Lowlevel
Wechseln zu:Navigation, Suche

Ich glaube, GAP3 ist der Abstand zwischen den Sektoren. Der ist nötig, weil versch. Laufwerke die Sektoren unterschiedlich lang machen (wegen den Abständen zw. den Bytes). Daher gibt es eine "Pufferzone", also muss das Laufwerk wissen wie groß es diese beim Schreiben machen soll. --user94 15:49, 10. Jun. 2010 (CEST)

Der Abstand zwischen den Sektoren dient vor allem dem Ausgleich von Drehzahlschwankungen und dem Umstand das die Elektronik den Punkt wo der Sektor anfangen soll ja quasi abschätzen muss. Die Sektoren sind immer gleich lang (in Zeit gemessen), das heisst dass das Laufwerk bzw. der Diskettencontroller seinen Takt benutzt und damit in einer bestimmten Zeit den gesamten Sektor am Stück schreibt. Auf Grund der Drehzahlschwankungen, die sind eben aufgrund der mechanischen Umstände nie ganz zu vermeiden, kann die Länge eines Sektors (in Millimeter gemessen) durchaus etwas vom Soll abweichen. Dafür sind die Abstände zwischen den Sektoren. Jeder Sektor hat eine Präamble, einen Header (enthält Spurnummer und Sektornummer), die Nutzdaten und am Schluss eine Prüfsumme (so ähnlich wie ein Ethernet-Frame). Wenn ein Sektor beschrieben werden soll dann muss der Diskettencontroller als erstes die Köpfe über der richtigen Spur positionieren und dann so lange lesen bis er mindestens einen korrekten Sektor gefunden hat der im zeigt das die Köpfe wirklich über der richtigen Spur sind. Dann muss so lange weiter gelesen werden bis der Sektor vorbeikommt der genau vor dem zu schreibenden Sektor liegt, wenn dieser gesehen wurde muss der Diskettencontroller vom Ende dieses Sektors noch den Sektor-Abstand abwarten und beginnt dann den eigentlich gewünschten Sektor zu schreiben. Falls die unmittelbar folgenden Sektoren auch gleich noch geschrieben werden sollen können diese einfach mit dem richtigen Abstand dran gehängt werden. Zwischen den einzelnen Bytes eines solchen Sektors können keine Lücken sein da das die Bit-Kodierung nicht zulässt, siehe MFM, Sektoren werden immer von der Präamble an bis zur Prüfsumme in einem Stück geschrieben. --Erik.vikinger 07:58, 18. Jun. 2010 (CEST)

kann es sein, das beim Befehl Schreib- / Lesekopf positionieren Byte 1 ein Fehler hat? Das ist der selbe Befehl wie Laufwerksstatus überprüfen, und außerdem steht ja Fh da und nicht 4h --Littlefox 13:30, 17. Nov. 2010 (CET)