Kontroler dyskietek - Floppy-disk controller
Kontroler dyskietek dysk ( FDC ) jest chip specjalnego przeznaczenia i związany kontroler dysku obwody, który kieruje i kontroluje odczytu i zapisu na komputerze stacji dyskietek (FDD). Ten artykuł zawiera koncepcje wspólne dla FDC opartych na NEC µPD765 i Intel 8272A lub 82072A i ich potomkach, używane w IBM PC i kompatybilnych z lat 80. i 90. XX wieku. Koncepcje te mogą, ale nie muszą mieć zastosowania do innych kontrolerów lub architektur, lub ilustrować je.
Przegląd
Pojedyncza płyta kontrolera dyskietek (FDC) może obsługiwać do czterech napędów dyskietek . Kontroler jest połączony z magistralą systemową komputera i pojawia się jako zestaw portów I/O dla procesora . Często jest również podłączony do kanału kontrolera DMA . Na PC x86 kontroler stacji dyskietek używa IRQ 6, w innych systemach mogą być użyte inne schematy przerwań . Kontroler dyskietek zwykle wykonuje transmisję danych w trybie bezpośredniego dostępu do pamięci (DMA).
Poniższy schemat przedstawia kontroler dyskietek, który komunikuje się z procesorem za pośrednictwem magistrali Industry Standard Architecture (ISA) lub podobnej i komunikuje się ze stacją dyskietek za pomocą 34-pinowego kabla taśmowego. Alternatywny układ, który jest bardziej powszechny w najnowszych projektach, zawiera FDC zawarty w układzie super I/O, który komunikuje się za pośrednictwem magistrali Low Pin Count (LPC).
Większość funkcji kontrolera dyskietek (FDC) jest wykonywana przez układ scalony, ale niektóre są wykonywane przez zewnętrzne obwody sprzętowe. Lista funkcji wykonywanych przez każdą z nich znajduje się poniżej.
Funkcje kontrolera dyskietek (FDC)
- Przetłumacz bity danych na format FM , MFM , M²FM lub GCR , aby móc je nagrywać
- Interpretuj i wykonuj polecenia, takie jak wyszukiwanie, czytanie, pisanie, formatowanie itp.
- Wykrywanie błędów z generowaniem i weryfikacją sum kontrolnych , takich jak CRC
- Synchronizuj dane z pętlą synchronizacji fazy (PLL)
Zewnętrzne funkcje sprzętowe
- Wybór stacji dyskietek (FDD)
- Włączenie silnika napędu dyskietek
- Sygnał resetu dla kontrolera dyskietek IC
- Włącz/wyłącz sygnały przerwań i DMA w kontrolerze dyskietek (FDC)
- Logika separacji danych
- Napisz logikę kompensacji wstępnej
- Sterowniki linii dla sygnałów do sterownika
- Odbiorniki liniowe dla sygnałów ze sterownika
Porty wejścia/wyjścia dla wspólnego kontrolera x86-PC
FDC ma trzy porty we/wy . To są:
- Port danych
- Główny rejestr stanu (MSR)
- Cyfrowy port sterowania
Pierwsze dwa znajdują się w układzie scalonym FDC, podczas gdy port sterowania znajduje się w sprzęcie zewnętrznym. Adresy tych trzech portów są następujące.
Adres portu [szesnastkowy] |
Nazwa portu | Lokalizacja | Typ portu |
---|---|---|---|
3F5 | Port danych | Dwukierunkowe we/wy | |
3F4 | Główny rejestr statusu | FDC IC | Wejście |
3F2 | Cyfrowy port sterowania | Sprzęt zewnętrzny | Wyjście |
Port danych
Ten port jest używany przez oprogramowanie do trzech różnych celów:
- Podczas wydawania polecenia do układu scalonego FDC przez ten port do układu scalonego FDC wysyłane są bajty parametrów polecenia i polecenia. FDC IC przechowuje różne parametry i polecenia w swoich wewnętrznych rejestrach.
- Po wykonaniu polecenia układ scalony FDC przechowuje zestaw parametrów stanu w rejestrach wewnętrznych. Są one odczytywane przez procesor przez ten port. Różne bajty statusu są prezentowane przez układ scalony FDC w określonej kolejności.
- W trybie programowania i przerwania transmisji danych, port danych jest używany do przesyłania danych między układem scalonym FDC a instrukcją CPU IN lub OUT.
Główny rejestr stanu (MSR)
Ten port jest używany przez oprogramowanie do odczytywania ogólnych informacji o stanie dotyczących układu scalonego FDC i FDD. Przed zainicjowaniem operacji dyskietki oprogramowanie odczytuje ten port, aby potwierdzić stan gotowości FDC i napędów dysków, aby zweryfikować stan poprzednio zainicjowanego polecenia. Różne bity tego rejestru reprezentują:
Fragment | Reprezentacja |
---|---|
0 | FDD 0: zajęty w trybie wyszukiwania |
1 | FDD 1: Zajęty w trybie wyszukiwania |
2 | FDD 2: Zajęty w trybie wyszukiwania |
3 | FDD 3: Zajęty w trybie wyszukiwania |
4 | FDC zajęty; Polecenie odczytu/zapisu w toku |
5 | Tryb inny niż DMA |
6 | DIO; Wskazuje kierunek przesyłania danych między układem scalonym FDC a procesorem |
7 | MQR; Wskazuje, że rejestr danych jest gotowy do przesyłania danych |
Wyjaśnienia | |
---|---|
MQR | 1 = rejestr danych gotowy, 0 = rejestr danych nie gotowy |
DIO | 1 = kontroler ma dane dla CPU, 0 = kontroler oczekuje danych z CPU |
Inne niż DMA | 1 = Kontroler nie w trybie DMA, 0 = Kontroler w trybie DMA |
FDC zajęty | 1 = zajęty, 0 = nie zajęty |
FDD 0,1,2,3 | 1 = Działa, 0 = Nie działa |
Cyfrowy port sterowania
Ten port jest używany przez oprogramowanie do sterowania niektórymi funkcjami FDD i FDC IC. Przypisania bitów tego portu to:
Fragment | Reprezentacja |
---|---|
0 i 1 | Numer urządzenia do wyboru |
2 | ZRESETUJ IC FDC (niski) |
3 | Włącz sygnały przerwań FDC i żądania DMA |
4 do 7 | Włączyć silnik w napędzie dyskowym odpowiednio 0, 1, 2 lub 3 |
Interfejs do stacji dyskietek
Kontroler łączy się z napędem za pomocą płaskiego kabla taśmowego z 34 złączami rozdzielonymi między hosta, napęd 3,5" i napęd 5,25". Ten typ kabla nazywa się uniwersalnym złączem. W rodzinie IBM PC i kompatybilnych skrętka w kablu służy do odróżnienia dysków twardych po gnieździe, do którego są podłączone. Wszystkie napędy są instalowane z tym samym zestawem adresów drive select, a skręt w kablu powoduje zamianę linii drive select na gnieździe. Napęd znajdujący się na najdalszym końcu kabla miałby dodatkowo zainstalowany rezystor terminujący w celu utrzymania jakości sygnału.
Nr pinu |
Nazwa sygnału |
Opis |
2 |
/REDWC |
Wybór gęstości 1=Niska/0=Wysoka |
4 |
N/C |
Skryty |
6 |
N/C |
Skryty |
8 |
/INDEKS |
0=Indeks |
10 |
/MOTEA |
0=Włącz silnik, przemiennik 0 |
12 |
/DRVSB |
Napęd Wybierz 1 |
14 |
/DRVSA |
Napęd Wybierz 0 |
16 |
/MOTEB |
0=Włącz silnik, przemiennik 1 |
18 |
/DIR |
0=Wybór kierunku |
20 |
/KROK |
0=Krok głowy |
22 |
/WDATA |
Zapisz dane |
24 |
/WGATE |
Zapis na dyskietce włączony, 0 = bramka zapisu |
26 |
/TRK00 |
0=Ścieżka 00 |
28 |
/WPT |
0=Ochrona przed zapisem |
30 |
/RDATA |
Czytaj dane |
32 |
/SIDE1 |
1=Strona 0/0=Strona 1 |
34 |
/DSKCHG |
1=Zmiana dysku/0=Gotowy |
Nieparzyste piny od 1 do 33 są uziemione |
|
Kontroler |
Napęd A |
Napęd B |
Opis |
Drut 1-9 |
1-9 |
1-9 |
1-9 |
Bez zmiany |
Drut 10 |
10 |
16 |
10 |
Silnik Włącz Napęd 0/1 |
Drut 11 |
11 |
15 |
11 |
Ziemia, bez zmian |
Drut 12 |
12 |
14 |
12 |
Napęd Wybierz 0/1 |
Drut 13 |
13 |
13 |
13 |
Ziemia, bez zmian |
Drut 14 |
14 |
12 |
14 |
Napęd Wybierz 0/1 |
Drut 15 |
15 |
11 |
15 |
Ziemia, bez zmian |
Drut 16 |
16 |
10 |
16 |
Silnik Włącz Napęd 0/1 |
Drut 17-34 |
17-34 |
17-34 |
17-34 |
Bez zmiany |
- Dalsze opisy sygnałów interfejsu zawarte są w specyfikacjach sterowników lub napędów.
Sformatuj dane
Możliwych jest wiele wzajemnie niekompatybilnych formatów dyskietek; oprócz fizycznego formatu na dysku możliwe są również niezgodne systemy plików.
Prowadzić samochód | Format | Pojemność | Szybkość transferu [ kbit/s ] |
RPM | Utwory | TPI | Komentarz |
---|---|---|---|---|---|---|---|
8-calowy SD | 8-calowy SD | 80 KB | 33.333 | 360 | 32 | 48 | Tylko na starych kontrolerach. |
5,25 cala SD | 5,25 cala SD | 160 KB | 125 | 40 | Tylko na starych kontrolerach. | ||
5,25-calowy dysk SSD | 5,25-calowy dysk SSD | 171 KB | 250–308 | 300 | 35 | 48 | Tylko w kompatybilnych z C1541 . |
5,25 cala SD | 5,25 cala SD | 180 KB | 150 | 40 | Tylko na starych kontrolerach. | ||
5,25 cala DD | 5,25 cala DD | 320/360/400 KB | 250 | 300 | 40 | 48 | 8/9/10 512 bajtowych sektorów odpowiednio. |
5,25 cala DD (96 tpi) | 5,25 cala QD (2DD) | 800 KB | 250 | 300 | 80 | 96 | |
HD o przekątnej 5,25 cala | 5,25 cala DD | 360 KB | 300 | 360 | 40 | 48 | |
5,25" HD | 5,25" HD | 1200 KB | 500 | 360 | 80 | 96 | Do 83 utworów. Inny prąd polaryzujący. |
5,25" HD | 5,25" HD | 720 KB | 300 | 360 | 80 | Do 83 utworów. | |
3,5" DD | 3,5" DD | 720 KB | 250 | 300 | 80 | 135 | Do 83 utworów. |
3,5" DD | 3,5" DD | 800 KB | 394–590 | 80 | Używany przez Apple Macintosh . | ||
3,5" DD | 3,5" DD | 800 KB | 250 | 300 | 80 | Używany przez Commodore 1581 . | |
3,5" DD | 3,5" DD | 880 KB | 250 | 300 | 80 | Do 83 utworów. Używany przez komputery Amiga . | |
3,5" DD | 3,5" DD | 360 KB | 250 | 300 | 40 | ||
3,5" HD | 3,5" DD | 720 KB | 250 | 300 | 80 | Do 83 utworów. | |
3,5" HD | 3,5" HD | 1440 KB | 500 | 300 | 80 | 135 | Do 83 utworów. |
3,5" HD | 3,5" HD | 1760 KB | 250 | 150 | 80 | Używany przez komputery Amiga . | |
3,5" ED | 3,5" ED | 2880 KB | 1000 | 300 | 80 | 135 | Do 83 utworów. |
Boki:
- SS (lub 1S) – jednostronny
- DS (lub 2S) – Dwustronny
Gęstość:
- SD (lub 1D) – Pojedyncza gęstość ( FM )
- DD (lub 2D) – Podwójna gęstość (najczęściej MFM )
- QD (lub 4D) – poczwórna gęstość
- HD – Wysoka gęstość
- ED – Bardzo wysoka gęstość
- TD – Potrójna gęstość
Stacja dyskietek „3-trybowa”
Przede wszystkim w Japonii są 3,5-calowe dyskietki o dużej gęstości, które obsługują trzy tryby formatów dysków zamiast normalnych dwóch – 1440 KB (2 MB niesformatowanego), 1,2 MB (1,6 MB niesformatowanego) i 720 KB (1 MB niesformatowanego). , tryb wysokiej gęstości dla 3,5-calowych stacji dyskietek w Japonii obsługiwał tylko pojemność 1,2 MB zamiast 1440 KB, która była używana w innych krajach. Podczas gdy bardziej popularny format 1440 KB obracał się z prędkością 300 obr./min, format 1,2 MB obracał się z prędkością 360 obr./min, tym samym bardzo przypominając format 1,2 MB z 15 sektorami na ścieżkę, który poprzednio znajdował się na 5,25-calowych stacjach dyskietek o dużej gęstości. obsługa obu formatów o wysokiej gęstości (jak również formatu podwójnej gęstości), stąd nazwa trybu 3. Niektóre BIOS-y mają ustawienie konfiguracyjne umożliwiające włączenie tego trybu dla obsługujących go napędów dyskietek.
Zobacz też
- Lista formatów dyskietek
- Western Digital FD1771
- Zintegrowana maszyna Woz (IWM)
- Paula (kontroler Amigi)
Bibliografia
- de Boyne Pollard, Jonathan (2003). „Nie ma czegoś takiego jak dyskietka 3,5 cala” . Często udzielane odpowiedzi .
- ISO / IEC 8860-1: 1987 Podwójna gęstość (DD)
- ISO / IEC 9529-1: 1989 o wysokiej gęstości (HD)
- ISO 10994-1: 1992 Bardzo wysoka gęstość (ED)
- ECMA-147
Dalsza lektura
- NEC µPD72070 — Specyfikacja kontrolera dyskietek w wersji 2.0 (PDF) . 2.0 wstępne. NEC Korporacja . Październik 1991. Zarchiwizowane z oryginału (PDF) 20 marca 2017 . Źródło 20 marca 2017 .
- Shah, Katen A. (1996) [wrzesień 1992, kwiecień 1992]. Intel 82077SL dla Super-Dense Floppies (PDF) (Uwaga aplikacyjna) (2 wyd.). Intel Corporation , Marketing IMD. AP-358, 292093-002. Zarchiwizowane z oryginału (PDF) w dniu 19 czerwca 2017 r . Źródło 19 czerwca 2017 .