Controlador de disquete

Controlador de disquetetera NEC D765AC.

El controlador de disquete (Floppy Disk Controller, FDC) es un chip especial y los circuitos de controlador de disco asociados, que dirige y controla la lectura y escritura de una disquetera (FDD).

Aunque el sistema mayoritariamente usado proviene del WD1771 y sobre todo de sus sucesores, el NEC µPD765 utilizado en el IBM PC y el Intel 82072A en el IBM AT, son dignos de mención los chips usados en el Apple Macintosh y sobre todo por su versatilidad los de los Commodore Amiga.

Para conectarse con las disqueteras mayoritariamente usan un conector macho de cable plano con 34 pines, con una muesca guía, aunque en primitivas tarjetas o equipos como el Amstrad CPC 6128 se recurría al conector de borde de tarjeta con ranura guía, idéntico al presente en las unidades de 5¼".

Este artículo contiene conceptos comunes a los FDC basados en el NEC µPD765, Intel 8072A, 82072A y sus descendientes, como fueron usados en el IBM PC y compatibles desde los años 1980 y 1990. Los conceptos pueden o no ser aplicables o ilustrativos de otros controladores o arquitecturas.

Introducción

Una simple tarjeta controladora de disco flexible puede soportar hasta cuatro disqueteras. El controlador está conectado con el bus de sistema del computador y aparece al CPU como un conjunto de puertos de E/S. A menudo también está conectado a un canal del controlador DMA. En el PC x86 la controlador de disquetes utiliza el IRQ 6, en otros sistemas pueden ser usados otros esquemas de interrupción. El controlador de disco flexible usualmente realiza la transmisión de datos en el modo de acceso directo a memoria (DMA).

El diagrama siguiente muestra un controlador de disco flexible que se comunica con el CPU mediante un bus de arquitectura estándar de la industria (ISA). Un arreglo alternativo que es más habitual en los últimos diseños tiene al FDC incluido dentro de un chip super I/O que se comunica a través de un bus Low Pin Count (LPC).

Diagrama de bloque mostrando la comunicación del FDC con la CPU y la FDD.
Adaptador de controlador de disquetes de 5¼" (FDC) de la IBM PC original.
Disquetera de 5¼" (FDD) con un disquete parcialmente insertado.

La mayoría de las funciones del controlador de disco flexible (FDC) se realiza por el circuito integrado principal, pero algunas son hechas por circuitos externos de hardware. La lista de funciones realizadas por cada uno es dada a continuación.

Funciones del controlador de disquete

  • Traduce bits de datos en el formato MFM o GCR para poder grabarlos.
  • Interpreta y ejecutar comandos tales como buscar, leer, escribir, formatear, etcétera (seek, read, write, format, etcétera).
  • Detección de error con la generación de sumas de comprobación y verificación, como el CRC.
  • Sincroniza datos con phase-locked loop (PLL).

Funciones del hardware externo

  • Selección de la unidad de disquete
  • Encendido el motor de la disquetera
  • Señal de reset para el IC del controlador de disquete
  • Habilitar / deshabilitar las señales de interrupción y DMA en el controlador de disco flexible
  • Lógica de separación de datos
  • Lógica de precompensación de escritura
  • Conductores de línea para señales al controlador
  • Receptores de línea para señales desde el controlador
Other Languages