Controlador de disquet



El controlador de disquet (Floppy Disk Controller, FDC) és un chip especial i els circuits de controlador de disc associats, que dirigix i controla la llectura i escritura d'una disquetera (FDD).
Encara que el sistema majoritàriament usat prové del WD1771 i sobretot dels seus successors, el NEC µPD765 utilisat en l'IBM PC i l'Intel 82072A en l'IBM AT, són dignes de menció els chips usats en l'Apple Macintosh i sobretot per la seua versatilitat els d'els Commodore Amiga.
Per a conectar-se en les disqueteras majoritàriament usen un conector mascle de cable pla en 34 pines, en una muesca guia, encara que en primitives targetes o equips com l'Amstrad CPC 6128 es recorria al conector de vora de targeta en recalat guia, idèntic al present en les unitats de 5¼".
Este artícul conté conceptes comuns als FDC basats en el NEC µPD765, Intel 8072A, 82072A i els seus descendents, com varen ser usats en l'IBM PC i compatibles des dels anys 1980 i 1990. Els conceptes poden o no ser aplicables o ilustratius d'atres controladors o arquitectura.
Introducció
Una simple targeta controladora de disc flexible pot soportar fins a quatre disqueteras. El controlador està conectat en el bus de sistema de la computadora i apareix al CPU com un conjunt de ports d'I/S. A sovint també està conectat a un canal del controlador DMA. En el PC x86 la controladora de disquets utilisa l'IRQ 6, en atres sistemes poden ser usats atres esquemes d'interrupció. El controlador de disc flexible usualment realisa la transmissió de senyes en el modo d'accés directe a memòria (DMA).
El diagrama següent mostra un controlador de disc flexible que es comunica en el CPU per mig d'un bus d'arquitectura estàndar de l'indústria (ISA). Un apany alternatiu que és més habitual en els últims dissenys té al FDC inclós dins d'un chip super I/O que es comunica a través d'un bus Low Pin Count (LPC).
![]() |
|
La majoria de les funcions del controlador de disc flexible (FDC) es realisa pel circuit integrat principal, pero algunes són fetes per circuits externs d'hardware. La llista de funcions realisades per cada u és donada a continuació.
Funcions del controlador de disquet
- Traduïx bits de senyes en el format MFM (Modulació de Freqüència Modificada) o GCR (Gravació codificada en grup) per a poder gravar-els.
- Interpreta i eixecutar comandos tals com buscar, llegir, escriure, formatear, etcétera (seek, read, write, format, etcétera).
- Detecció d'error en la generació de sumixques de comprovació i verificació, com el CRC.
- Sincronisa senyes en phase-locked loop (PLL).
Funcions de l'hardware extern
- Selecció de l'unitat de disquet
- Encés el motor de la disquetera
- Senyal de reset per al IC del controlador de disquet
- Habilitar / deshabilitar les senyals d'interrupció i DMA en el controlador de disc flexible
- Llògica de separació de senyes
- Llògica de precompensación d'escritura
- Conductors de llínea per a senyals al controlador
- Receptors de llínea per a senyals des del controlador
Ports d'entrada/eixida per a controladors comuns en els PC x86
La FDC té tres ports de l'I/S. Estos són:
- Port de senyes
- Registre de l'estat principal (MSR)
- Port de control
Els dos primers dos residixen dins de la IC del FDC mentres el port de control està en l'hardware extern. Les direccions d'estos tres ports són les següents:
| Direcció del port [hex] |
Nom del port | Ubicació | Tipo de port |
|---|---|---|---|
| 3F5 | Registre de senyes | IC del FDC | I/S bidireccional |
| 3F4 | Registre de l'estat principal | IC del FDC | Entrada |
| 3F2 | Port de control digital | Hardware extern | Eixida |
Ports del FDC
Port de senyes 3F5
El port 3F5 és utilisat pel software per a tres propòsits diferents:
- Mentres s'emet un comando al IC del FDC, bytes del comando i els seus paràmetros són emesos al IC del FDC a través d'este port. El IC FDC almagasena el comando i els diferents paràmetros en els seus registres interns.
- En acabant de que un comando és eixecutat, el IC de FDC almagasena en els registres interns un conjunt de paràmetros d'estat. Estos són llegits pel CPU a través d'este port. Els diferents bytes d'estatus són presentats pel IC de FDC en una seqüència específica.
- En modo de transferència de senyes programat i d'interrupció, el port de senyes és usat per a transferir senyes entre el IC del FDC i les instruccions IN o OUT del CPU.
Registre d'estat principal (MSR) 3F4
El port 3F4 és utilisat pel software per a llegir l'informació general sobre el IC del FDC i els FDD. Abans d'iniciar una operació de disquet el software llig este port per a confirmar l'estat de preparació del FDC i les unitats de disc per a comprovar l'estat del comando prèviament iniciat. Els diferents bits d'este registre representen lo següent:
+---+---+---+---+---+---+---+---+
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
+---+---+---+---+---+---+---+---+
| | | | | | | |
| | | | | | | +---- 1 = el FDD 0 està ocupat en modo seek
| | | | | | +-------- 1 = el FDD 1 està ocupat en modo seek
| | | | | +------------ 1 = el FDD 2 està ocupat en modo seek
| | | | +---------------- 1 = el FDD 3 està ocupat en modo seek
| | | |
| | | +-------------------- FDC ocupat; Hi ha un comando de Llectura/Escritura en progrés
| | | 1 = ocupat
| | | 0 = no ocupat
| | +------------------------ Modo no DMA
| | 1 = el controlador no està en modo DMA
| | 0 = el controlador està en modo DMA
| +---------------------------- VA DONAR; Indica la direcció de la transferència entre el IC del FDC i el CPU
| 1 = controlador té senyes per al CPU
| 0 = el controlador està esperant senyes des del CPU
+-------------------------------- MQR; Indica que el registre de senyes està llest per a la transferència de senyes
1 = llest
0 = no llest
Port auxiliar
Port de control digital 3F2
El port 3F2 és utilisat pel software per a controlar certes funcions dels FDD i del IC del FDC. Les assignació de bit d'este port són:
+---+---+---+---+---+---+---+---+ | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | +---+---+---+---+---+---+---+---+ | | | | | | | | | | | | | | +---+---- Dispositiu a ser seleccionat | | | | | | 00 = FDD 0 | | | | | | 01 = FDD 1 | | | | | | 10 = FDD 2 | | | | | | 11 = FDD 3 | | | | | | | | | | | +------------ RESET IC del FDC (baix) | | | | +---------------- Habilita les senyals de l'interrupció del FDC i la solicitut DMA | | | | | | | | Encén o apaga l'unitat de disquet (1 = encén, 0 = apaga) | | | +------------------------- FDD 0 | | +----------------------------- FDD 1 | +--------------------------------- FDD 2 +------------------------------------- FDD 3
Referències
Vore també
- Este artícul conté una traducció derivada de «Controlador de disquete» de Wikipedia en castellà publicada baix la Llicència de documentació lliure de GNU i la Llicència Creative Commons Reconeiximent-CompartirIgual 4.0 Internacional.


