Controlador de disquete - Floppy-disk controller
Un controlador de disquete ( FDC ) es un chip de propósito especial y un circuito controlador de disco asociado que dirige y controla la lectura y escritura en la unidad de disquete (FDD) de una computadora . Este artículo contiene conceptos comunes a los FDC basados en NEC µPD765 e Intel 8272A o 82072A y sus descendientes, tal como se utilizan en IBM PC y compatibles de los años 80 y 90. Los conceptos pueden o no ser aplicables o ilustrativos de otros controladores o arquitecturas.
Visión general
Una sola placa controladora de disquete (FDC) puede admitir hasta cuatro unidades de disquete . El controlador está vinculado al bus del sistema de la computadora y aparece como un conjunto de puertos de E / S en la CPU . A menudo también está conectado a un canal del controlador DMA . En la PC x86, el controlador de disquete usa IRQ 6, en otros sistemas se pueden usar otros esquemas de interrupción . El controlador de disquete normalmente realiza la transmisión de datos en modo de acceso directo a memoria (DMA).
El siguiente diagrama muestra un controlador de disquete que se comunica con la CPU a través de un bus de arquitectura estándar industrial (ISA) o un bus similar y se comunica con la unidad de disquete con un cable plano de 34 clavijas. Una disposición alternativa que es más habitual en los diseños recientes tiene el FDC incluido en un super chip de E / S que se comunica a través de un bus Low Pin Count (LPC).
La mayoría de las funciones del controlador de disquete (FDC) las realiza el circuito integrado, pero algunas son realizadas por circuitos de hardware externos. La lista de funciones realizadas por cada uno se da a continuación.
Funciones del controlador de disquete (FDC)
- Traducir bits de datos a formato FM , MFM , M²FM o GCR para poder grabarlos
- Interprete y ejecute comandos como buscar, leer, escribir, formatear, etc.
- Detección de errores con generación y verificación de sumas de comprobación, como CRC
- Sincronizar datos con bucle de bloqueo de fase (PLL)
Funciones de hardware externo
- Selección de unidad de disquete (FDD)
- Encender el motor de la unidad de disquete
- Señal de reinicio para el controlador de disquete IC
- Habilitar / deshabilitar las señales de interrupción y DMA en el controlador de disquete (FDC)
- Lógica de separación de datos
- Escribir lógica de precompensación
- Controladores de línea para señales al controlador
- Receptores de línea para señales del controlador
Puertos de entrada / salida para controlador x86-PC común
El FDC tiene tres puertos de E / S. Estos son:
- Puerto de datos
- Registro de estado principal (MSR)
- Puerto de control digital
Los dos primeros residen dentro del FDC IC mientras que el puerto de control está en el hardware externo. Las direcciones de estos tres puertos son las siguientes.
Dirección de puerto [hexadecimal] |
Nombre del puerto | Localización | Tipo de puerto |
---|---|---|---|
3F5 | Puerto de datos | E / S bidireccional | |
3F4 | Registro de estado principal | FDC IC | Aporte |
3F2 | Puerto de control digital | Hardware externo | Producción |
Puerto de datos
El software utiliza este puerto para tres propósitos diferentes:
- Mientras se emite un comando al FDC IC, los bytes de comando y parámetro de comando se envían al FDC IC a través de este puerto. El FDC IC almacena los diferentes parámetros y el comando en sus registros internos.
- Después de que se ejecuta un comando, el FDC IC almacena un conjunto de parámetros de estado en los registros internos. Estos son leídos por la CPU a través de este puerto. El FDC IC presenta los diferentes bytes de estado en una secuencia específica.
- En el modo de transferencia de datos programado e interrumpido, el puerto de datos se utiliza para transferir datos entre el FDC IC y la instrucción IN o OUT de la CPU.
Registro de estado principal (MSR)
El software utiliza este puerto para leer la información de estado general con respecto al FDC IC y los FDD. Antes de iniciar una operación de disquete, el software lee este puerto para confirmar la condición de preparación del FDC y las unidades de disco para verificar el estado del comando iniciado previamente. Los diferentes bits de este registro representan:
Poco | Representación |
---|---|
0 | FDD 0: Ocupado en modo de búsqueda |
1 | FDD 1: Ocupado en modo de búsqueda |
2 | FDD 2: Ocupado en modo de búsqueda |
3 | FDD 3: Ocupado en modo de búsqueda |
4 | FDC ocupado; Comando de lectura / escritura en curso |
5 | Modo no DMA |
6 | DIO; Indica la dirección de la transferencia de datos entre el FDC IC y la CPU |
7 | MQR; Indica que el registro de datos está listo para la transferencia de datos. |
Explicaciones | |
---|---|
MQR | 1 = registro de datos listo, 0 = registro de datos no listo |
DIO | 1 = el controlador tiene datos para la CPU, 0 = el controlador espera datos de la CPU |
No DMA | 1 = Controlador no en modo DMA, 0 = Controlador en modo DMA |
FDC ocupado | 1 = ocupado, 0 = no ocupado |
FDD 0,1,2,3 | 1 = en ejecución, 0 = no en ejecución |
Puerto de control digital
El software utiliza este puerto para controlar determinadas funciones FDD y FDC IC. Las asignaciones de bits de este puerto son:
Poco | Representación |
---|---|
0 y 1 | Número de dispositivo a seleccionar |
2 | RESTABLECER FDC IC (bajo) |
3 | Habilitar señales de solicitud de interrupción FDC y DMA |
4 a 7 | Encienda el motor en la unidad de disco 0, 1, 2 o 3 respectivamente |
Interfaz a la disquetera
El controlador se conecta a la unidad mediante un cable plano con 34 conectores divididos entre el host, la unidad de 3,5 "y la unidad de 5,25". Este tipo de cable se denomina conector universal. En la familia IBM PC y compatibles, se usa un giro en el cable para distinguir las unidades de disco por el zócalo al que están conectadas. Todas las unidades se instalan con el mismo conjunto de direcciones de selección de unidad y el giro en el cable intercambia la línea de selección de unidad en el zócalo. El variador que se encuentra en el extremo más alejado del cable también tendría una resistencia de terminación instalada para mantener la calidad de la señal.
Pin No. |
Nombre de la señal |
Descripción |
2 |
/ REDWC |
Selección de densidad 1 = Baja / 0 = Alta |
4 |
CAROLINA DEL NORTE |
Reservado |
6 |
CAROLINA DEL NORTE |
Reservado |
8 |
/ÍNDICE |
0 = índice |
10 |
/ MOTEA |
0 = Motor habilitado variador 0 |
12 |
/ DRVSB |
Drive Select 1 |
14 |
/ DRVSA |
Seleccionar unidad 0 |
dieciséis |
/ MOTEB |
0 = Motor habilitado variador 1 |
18 |
/ DIR |
0 = Selección de dirección |
20 |
/PASO |
0 = Paso de cabeza |
22 |
/ WDATA |
Escribir datos |
24 |
/ WGATE |
Habilitar escritura en disquete, 0 = Puerta de escritura |
26 |
/ TRK00 |
0 = Pista 00 |
28 |
/ WPT |
0 = protección contra escritura |
30 |
/ RDATA |
Leer datos |
32 |
/ LADO1 |
1 = Lado 0/0 = Lado 1 |
34 |
/ DSKCHG |
1 = Cambio de disco / 0 = Listo |
Los pines impares del 1 al 33 están conectados a tierra |
|
Controlador |
Conducir A |
Unidad B |
Descripción |
Alambre 1-9 |
1-9 |
1-9 |
1-9 |
Ningún cambio |
Alambre 10 |
10 |
dieciséis |
10 |
Motor Enable Drive 0/1 |
Alambre 11 |
11 |
15 |
11 |
Tierra, sin cambios |
Alambre 12 |
12 |
14 |
12 |
Selección de unidad 0/1 |
Alambre 13 |
13 |
13 |
13 |
Tierra, sin cambios |
Alambre 14 |
14 |
12 |
14 |
Selección de unidad 0/1 |
Alambre 15 |
15 |
11 |
15 |
Tierra, sin cambios |
Alambre 16 |
dieciséis |
10 |
dieciséis |
Motor Enable Drive 0/1 |
Alambre 17-34 |
17-34 |
17-34 |
17-34 |
Ningún cambio |
- Las especificaciones de los controladores o accionamientos contienen más descripciones de las señales de interfaz.
Formatear datos
Son posibles muchos formatos de disquete incompatibles entre sí; además del formato físico en el disco, también son posibles sistemas de archivos incompatibles.
Conducir | Formato | Capacidad | Velocidad de transferencia [ kbit / s ] |
RPM | Pistas | TPI | Comentario |
---|---|---|---|---|---|---|---|
SD de 8 pulgadas | SD de 8 pulgadas | 80 KB | 33.333 | 360 | 32 | 48 | Solo en controladores antiguos. |
SD de 5,25 pulgadas | SD de 5,25 pulgadas | 160 KB | 125 | 40 | Solo en controladores antiguos. | ||
SSDD de 5,25 pulgadas | SSDD de 5,25 pulgadas | 171 KB | 250-308 | 300 | 35 | 48 | Solo en compatibles con C1541 . |
SD de 5,25 pulgadas | SD de 5,25 pulgadas | 180 KB | 150 | 40 | Solo en controladores antiguos. | ||
DD de 5,25 pulgadas | DD de 5,25 pulgadas | 320/360/400 KB | 250 | 300 | 40 | 48 | 9/8/10 sectores de 512 bytes respectivamente. |
DD de 5,25 pulgadas (96 tpi) | QD de 5,25 pulgadas (2DD) | 800 KB | 250 | 300 | 80 | 96 | |
HD de 5,25 pulgadas | DD de 5,25 pulgadas | 360 KB | 300 | 360 | 40 | 48 | |
5,25 "HD | 5,25 "HD | 1200 KB | 500 | 360 | 80 | 96 | Hasta 83 pistas. Corriente de polarización diferente. |
5,25 "HD | 5,25 "HD | 720 KB | 300 | 360 | 80 | Hasta 83 pistas. | |
3,5 "DD | 3,5 "DD | 720 KB | 250 | 300 | 80 | 135 | Hasta 83 pistas. |
3,5 "DD | 3,5 "DD | 800 KB | 394–590 | 80 | Utilizado por Apple Macintosh . | ||
3,5 "DD | 3,5 "DD | 800 KB | 250 | 300 | 80 | Utilizado por Commodore 1581 . | |
3,5 "DD | 3,5 "DD | 880 KB | 250 | 300 | 80 | Hasta 83 pistas. Usado por computadoras Amiga . | |
3,5 "DD | 3,5 "DD | 360 KB | 250 | 300 | 40 | ||
3,5 "HD | 3,5 "DD | 720 KB | 250 | 300 | 80 | Hasta 83 pistas. | |
3,5 "HD | 3,5 "HD | 1440 KB | 500 | 300 | 80 | 135 | Hasta 83 pistas. |
3,5 "HD | 3,5 "HD | 1760 KB | 250 | 150 | 80 | Usado por computadoras Amiga . | |
3,5 "ED | 3,5 "ED | 2880 KB | 1000 | 300 | 80 | 135 | Hasta 83 pistas. |
Lados:
- SS (o 1S): una cara
- DS (o 2S): doble cara
Densidad:
- SD (o 1D): densidad única ( FM )
- DD (o 2D): doble densidad (la mayoría de las veces MFM )
- QD (o 4D) - Densidad cuádruple
- HD: alta densidad
- ED - Densidad extra alta
- TD - Triple densidad
Unidad de disquete de "3 modos"
Principalmente en Japón, hay unidades de disquete de alta densidad de 3,5 "que admiten tres modos de formatos de disco en lugar de los dos habituales: 1440 KB (2 MB sin formatear), 1,2 MB (1,6 MB sin formatear) y 720 kB (1 MB sin formatear). Originalmente , el modo de alta densidad para unidades de disquete de 3,5 "en Japón solo admitía una capacidad de 1,2 MB en lugar de la capacidad de 1440 KB que se utilizaba en otros lugares. Mientras que el formato más común de 1440 KB giraba a 300 rpm, el formato de 1,2 MB giraba a 360 rpm, por lo que se asemeja mucho al formato de 1,2 MB con 15 sectores por pista que se encontraban anteriormente en las unidades de disquete de alta densidad de 5,25 ". Posteriormente se incorporaron las unidades de disquete japonesas soporte para ambos formatos de alta densidad (así como el formato de doble densidad), de ahí el nombre de modo 3. Algunas BIOS tienen un ajuste de configuración para habilitar este modo para unidades de disquete que lo admitan.
Ver también
- Lista de formatos de disquete
- Western Digital FD1771
- Máquina Woz integrada (IWM)
- Paula (controladora de Amiga)
Referencias
- de Boyne Pollard, Jonathan (2003). "No existen los disquetes de 3,5 pulgadas" . Respuestas dadas con frecuencia .
- ISO / IEC 8860-1: 1987 de doble densidad (DD)
- ISO / IEC 9529-1: 1989 de alta densidad (HD)
- ISO 10994-1: 1992 Densidad extra alta (ED)
- ECMA-147
Otras lecturas
- NEC µPD72070 - Especificación del controlador de disquete versión 2.0 (PDF) . 2.0 preliminar. NEC Corporation . Octubre de 1991. Archivado desde el original (PDF) el 20 de marzo de 2017 . Consultado el 20 de marzo de 2017 .
- Shah, Katen A. (1996) [septiembre de 1992, abril de 1992]. Intel 82077SL para disquetes superdensos (PDF) (Nota de aplicación) (2 ed.). Intel Corporation , IMD Marketing. AP-358, 292093-002. Archivado desde el original (PDF) el 19 de junio de 2017 . Consultado el 19 de junio de 2017 .