stringtranslate.com

Controlador de disquete

Placa FDC de un IBM 5150. El CI FDC NEC D765AC es el paquete grande dual en línea en la parte superior.

Un controlador de disquete ( FDC ) es un componente de hardware que dirige y controla la lectura y escritura en la unidad de disquete (FDD) de una computadora. Ha evolucionado desde un conjunto discreto de componentes en una o más placas de circuitos hasta un circuito integrado de propósito especial (IC o "chip") o un componente del mismo. Un FDC es responsable de leer los datos presentados desde la computadora host y convertirlos al formato en disco de la unidad utilizando uno de varios esquemas de codificación, como la codificación FM (densidad simple) o la codificación MFM (densidad doble), y leer esos formatos y devolverlos a sus valores binarios originales.

Dependiendo de la plataforma, las transferencias de datos entre el controlador y el ordenador anfitrión serían controladas por el propio microprocesador del ordenador , o por un microprocesador dedicado de bajo coste como el MOS 6507 o el Zilog Z80 . Los primeros controladores requerían circuitos adicionales para realizar tareas específicas, como proporcionar señales de reloj y configurar varias opciones. Los diseños posteriores incluyeron más de esta funcionalidad en el controlador y redujeron la complejidad de los circuitos externos; las soluciones de un solo chip eran comunes a finales de la década de 1980.

En la década de 1990, el disquete fue cediendo terreno a los discos duros , que requerían controladores similares. En estos sistemas, el controlador también solía combinar un microcontrolador para gestionar la transferencia de datos a través de conectores estandarizados como SCSI e IDE que se podían utilizar con cualquier ordenador. En los sistemas más modernos, el FDC, si es que está presente, suele ser parte de las muchas funciones que proporciona un único chip de E/S .

Historia

El primer controlador de unidad de disquete (FDC) como la primera unidad de disquete (la IBM 23FD) enviada en 1971 como un componente en la Unidad de Control de Almacenamiento IBM 2385 para la unidad de disco de cabezal fijo IBM 2305 , [1] y de los modelos 155 y 165 del Sistema 370. La Unidad de Control de Almacenamiento IBM 3830, un controlador contemporáneo y bastante similar, usa su procesador interno para controlar un 23FD. [2] El FDC resultante es una implementación simple en los circuitos híbridos MST de IBM en unas pocas tarjetas de circuito impreso. [2] La unidad, el FDC y los medios eran propiedad de IBM y aunque otros fabricantes proporcionaron FDD tempranos antes de 1973, no había estándares para FDC, unidades o medios.

La introducción del sistema de entrada de datos 3740 de IBM en 1973 creó el estándar de medios básico para el disquete de un solo lado de 8 pulgadas, el disquete "Tipo 1" de IBM , que junto con los crecientes requisitos de almacenamiento de acceso directo extraíble y económico para muchas aplicaciones pequeñas provocó un crecimiento espectacular en los envíos de unidades y controladores. [3]

Antes de la introducción de versiones de circuitos integrados de propósito especial, la mayoría de los FDC consistían en al menos un circuito impreso implementado con 40 o más circuitos integrados. [4] Algunos ejemplos de dichos FDC incluyen:

El primer FDC implementado como un circuito integrado de propósito especial es el Western Digital FD1771 [14] anunciado el 19 de julio de 1976. [15] El diseño inicial admitía un solo formato y requería circuitos adicionales pero con el tiempo, como familia, el diseño se volvió de múltiples fuentes y evolucionó para admitir muchos formatos y minimizar los circuitos externos.

El NEC μPD765 se anunció en 1978 [16] y en 1979 NEC introdujo el μPD72068, que era compatible con el software del μPD765 e incorporaba un PLL digital . [17] El μPD765 se convirtió en un estándar casi industrial cuando se adoptó en el IBM PC original (1981); el FDC estaba ubicado físicamente en su propia tarjeta adaptadora junto con los circuitos de soporte. Otros proveedores, como Intel, produjeron piezas compatibles. Este diseño evolucionó con el tiempo hasta convertirse en una familia que ofrecía un FDC casi completo en un chip. [18]

En marzo de 1986, Sharp había comercializado el FDC LH0110. [19]

A principios de 1987, Intel presentó el controlador de disquete integrado CHMOS 82072 para su uso en computadoras PC estándar de la industria. [20] [21]

Finalmente, en la mayoría de los sistemas informáticos, el FDC pasó a formar parte de un chip Super I/O o de un chip Southbridge . [18] [22] [23] Sin embargo, en las placas base posteriores, a medida que los usuarios de ordenadores personales fueron dejando de utilizar disquetes, esta interfaz se eliminó. Algunos fabricantes desarrollaron controladores de disquetes basados ​​en USB . [24]

Descripción general

Un disquete almacena datos binarios no como una serie de valores, sino como una serie de cambios de valor. Cada uno de estos cambios, registrados en la polaridad del medio de grabación magnético, hace que se induzca un voltaje en el cabezal de la unidad a medida que la superficie del disco gira a su alrededor. Es la sincronización de estos cambios de polarización y los picos de voltaje resultantes lo que codifica los unos y los ceros de los datos originales. Una de las funciones del controlador es convertir los datos originales en el patrón adecuado de polarizaciones durante la escritura y luego recrearlos durante las lecturas.

Como el almacenamiento se basa en la sincronización, y esa sincronización se ve fácilmente afectada por perturbaciones mecánicas y eléctricas, la lectura precisa de los datos requiere algún tipo de señal de referencia, el reloj . Como la sincronización en el disco cambia constantemente, la señal del reloj debe ser proporcionada por el propio disco. Para ello, los datos originales se modifican con transiciones adicionales para permitir que la señal del reloj se codifique en los datos y luego se utiliza la recuperación del reloj durante las lecturas para recrear la señal original. Algunos controladores requieren que esta codificación se realice externamente, pero la mayoría de los diseños proporcionan codificaciones estándar como FM y MFM .

El controlador también proporciona una serie de otros servicios para controlar el mecanismo de la unidad en sí. Estos suelen incluir el movimiento del cabezal de la unidad para centrarlo sobre las pistas independientes del disco, el seguimiento de la ubicación del cabezal y su retorno a cero, y, a veces, funcionalmente, para formatear un disco en función de entradas simples como la cantidad de pistas, sectores por pista y cantidad de bytes por sector.

Para producir un sistema completo, el controlador debe combinarse con circuitos adicionales o software que actúen como puente entre el controlador y el sistema anfitrión. En algunos sistemas, como el Apple II y el IBM PC , esto se controla mediante software que se ejecuta en el microprocesador anfitrión del ordenador y la interfaz de la unidad se conecta directamente al procesador mediante una tarjeta de expansión . En otros sistemas, como los ordenadores Commodore 64 y Atari de 8 bits , no hay una ruta directa desde el controlador hasta la CPU anfitriona y se utiliza un segundo procesador como el MOS 6507 o el Zilog Z80 dentro de la unidad para este propósito.

El controlador original del Apple II tenía la forma de una tarjeta enchufable en el ordenador anfitrión. Podía admitir dos unidades y las unidades eliminaban la mayor parte de los circuitos integrados normales. Esto le permitió a Apple llegar a un acuerdo con Shugart Associates para obtener una unidad simplificada que carecía de la mayor parte de sus circuitos normales. [4] Esto significaba que el costo combinado de una sola unidad y una tarjeta controladora era aproximadamente el mismo que en otros sistemas, pero se podía conectar una segunda unidad por un costo adicional menor. [ cita requerida ]

El IBM PC adoptó un enfoque más convencional, su tarjeta adaptadora podía admitir hasta cuatro unidades; en el PC, el acceso directo a memoria (DMA) a las unidades se realizaba utilizando el canal DMA 2 e IRQ 6. El diagrama siguiente muestra un controlador de disquete convencional que se comunica con la CPU a través de un bus de arquitectura estándar de la industria (ISA) o un bus similar y se comunica con la unidad de disquete con un cable plano de 34 pines. Una disposición alternativa que es más habitual en los diseños recientes tiene el FDC incluido en un chip de E/S super que se comunica a través de un bus de bajo conteo de pines (LPC).

Diagrama de bloques que muestra la comunicación FDC con la CPU y el FDD.

La mayoría de las funciones del controlador de disquete (FDC) las realiza el circuito integrado , pero algunas las realizan circuitos de hardware externos. A continuación se muestra la lista de funciones que realiza cada uno.

Funciones del controlador de disquete (FDC)

Funciones de hardware externo

Puertos de entrada/salida para controlador x86-PC común

El FDC tiene tres puertos de E/S :

Los dos primeros se encuentran dentro del CI FDC, mientras que el puerto de control se encuentra en el hardware externo. Las direcciones de estos tres puertos son las siguientes.

Puerto de datos

El software utiliza este puerto para tres propósitos diferentes:

Registro de estado principal (MSR)

Este puerto es utilizado por el software para leer la información de estado general del CI FDC y las FDD. Antes de iniciar una operación con un 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 anteriormente. Los diferentes bits de este registro representan:

 

Puerto de control digital

El software utiliza este puerto para controlar determinadas funciones de los circuitos integrados FDD y FDC. Las asignaciones de bits de este puerto son:

Interfaz con la unidad de disquete

Un controlador se conecta a una o más unidades mediante un cable plano, 50 cables para unidades de 8" y 34 cables para unidades de 3,5" y 5,25". Un "cable universal" tiene cuatro conectores de unidad, dos para cada unidad de 3,5" y 5,25". [25] En la familia IBM PC y compatibles, se utiliza una torsión 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 la torsión en el cable intercambia las líneas de selección de unidad en el zócalo. La unidad que está 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. [26]

En las especificaciones del fabricante de las unidades o controladores host se incluyen descripciones más detalladas de las señales de interfaz, incluidos significados alternativos.

Cuando el controlador y la unidad de disco se ensamblan como un solo dispositivo, como es el caso de algunas unidades de disquete externas, por ejemplo, las unidades de disquete Commodore 1540 y USB, [27] la unidad de disquete interna y su interfaz no se modifican, mientras que el dispositivo ensamblado presenta una interfaz diferente, como IEEE-488 , puerto paralelo o USB .

Formatear datos

Son posibles muchos formatos de disquete entre sí incompatibles; además del formato físico del disco, también son posibles sistemas de archivos incompatibles.

[38]

Lados:

Densidad:

Unidad de disquete de 3 modos

Un disco de instalación de Microsoft Office 4.3 en japonés, provisto de formatos de 3,5", 1,2 MB y 1440 KB.

En Japón, principalmente, existen 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 formato), 1,2 MB (1,6 MB sin formato) y 720 KB (1 MB sin formato). Originalmente, los modos de alta densidad para unidades de disquete de 3,5" en Japón solo admitían una capacidad de 1,2 MB en lugar de los 1440 KB que se utilizaban en otros lugares. [39] Mientras que el formato más común de 1440 KB giraba a 300 rpm, los formatos de 1,2 MB giraban a 360 rpm, por lo que se parecían mucho a las geometrías del formato de 1,2 MB con 80 pistas, 15 sectores por pista y 512 bytes por sector que se encontraban anteriormente en los disquetes de alta densidad de 5,25" o el formato de 1,2 MB con 77 pistas, 8 sectores por pista y 1024 bytes por sector que se encontraba anteriormente en los disquetes de doble densidad de 8". Las unidades de disquete japonesas posteriores incorporaron soporte para ambos formatos de alta densidad (así como para el formato de doble densidad), de ahí el nombre de modo 3. Algunas BIOS tienen una opción de configuración para habilitar este modo para las unidades de disquete que lo admiten. [40]

Véase también

Referencias

  1. ^ "IBM 2835 Storage Control and IBM 2305 Fixed Head Storage Module Reference Manual" (PDF) . Octubre de 1983 . Consultado el 22 de julio de 2022 . La unidad de control contiene un dispositivo de acceso directo en miniatura que proporciona almacenamiento de solo lectura para la copia de seguridad de la lógica de control y el almacenamiento de microdiagnósticos no residentes. El medio de grabación es un cartucho de disco económico recubierto de Mylar.
  2. ^ ab "IBM Maintenance Library – Storage Control, Model 2, Volume 2" (PDF) . 4 de junio de 1973. págs. MPL 25A, MPL 200, MPL 245, MPL 260. Consultado el 29 de julio de 2022. El hardware ya ha añadido 64 palabras (pista 0, sector 0) y este microprograma cargará el resto del almacenamiento de control.
  3. ^ Porter, James N. (agosto de 1977). INFORME DE TENDENCIAS/DISCO DE 1977 – UNIDADES DE DISCO FLEXIBLES (Informe). pág. 26.
  4. ^ abc Gregg, Williams; Moore, Rob, eds. (1984). "LA HISTORIA DE APPLE, PARTE 2, Una entrevista con Steve Wozniak". Byte . Consultado el 6 de agosto de 2022 . En ese momento, todos los controladores de disquete existentes eran de 40 o 50 chips...
  5. ^ 3741 Data Station, Theory-Maintenance. IBM. 15 de mayo de 1974. págs. 14–2.14–15 (488/599) . Consultado el 9 de agosto de 2022 .
  6. ^ "Primer periférico de disquete diseñado para microcomputadoras". Diseño Electrónico . 27 de septiembre de 1974. p. 138 . Consultado el 11 de agosto de 2022 .
  7. ^ "CONTROLADOR DE DISQUETE CF 360" (PDF) . iCOM Microperipherals . Consultado el 19 de agosto de 2022 . El controlador es totalmente compatible con IBM 3740 y 3540 y todo el formateo y desformateo se realiza automáticamente dentro del controlador.
  8. ^ DIAGRAMAS ESQUEMÁTICOS Y LÓGICOS DEL MODELO FD360 (PDF) (Informe). iCOM Microperipherals. Marzo de 1976. págs. 8, 34. Consultado el 11 de agosto de 2022 .
  9. ^ "Discos". INTERFACE AGE . Noviembre de 1976. págs. 65–66 . Consultado el 24 de julio de 2022 .
  10. ^ "FD0300 FLOPPY DISK CONTROLLER" (PDF) . 1976 . Consultado el 24 de julio de 2022 . También se proporciona una interfaz de host de propósito general para una fácil interfaz con sistemas host como minicomputadoras, buses de E/S de microprocesadores, terminales CRT, instrumentos, microprocesadores TTL/MSI, controladores industriales y otros sistemas orientados a bytes.
  11. ^ "Tecnología de disco de última generación" (PDF) . Byte . Diciembre de 1976 . Consultado el 1 de septiembre de 2022 .
  12. ^ "Controlador de unidad de disquete ministreaker SA4400" (PDF) . 1977. Consultado el 1 de septiembre de 2022 .
  13. ^ Craig, David T (abril de 1978). "Información de la familia de computadoras Apple II, esquema: tarjeta de interfaz del disco 2" (PDF) . Consultado el 6 de agosto de 2022 .
  14. ^ Joe, Jaworski (1985). "Controladores de disquete". 1985 Controller Concepts – Volume 1 (PDF) (Informe técnico). pág. SEMI-1 (67/160) . Consultado el 9 de septiembre de 2022. Western Digital Corporation fue pionera en este campo y, en 1976, comenzó a muestrear el primer controlador de disquete LSI, el FD1771.
  15. ^ "Anuncios recientes de IC". Computadora . IEEE. 1976 . Consultado el 6 de agosto de 2022 .
  16. ^ "μPD765 CONTROLADOR DE DISQUETE DE DENSIDAD SIMPLE/DOBLE" (PDF) . NEC. Diciembre de 1978 . Consultado el 9 de septiembre de 2022 .
  17. ^ "Controlador de disquete μPD72068 de NEC Electronics Inc." (PDF) . Consultado el 24 de enero de 2024 .
  18. ^ ab Necasek, Michal (26 de mayo de 2011). «La evolución del controlador de disquete» . Consultado el 2 de septiembre de 2022 .
  19. ^ "Sharp 1986 Semiconductor Data Book" (PDF) . págs. 279–295 . Consultado el 14 de enero de 2024 .
  20. ^ Intel Corporation, "Nuevos componentes de enfoque de producto: controlador de disco de un solo chip que comprime más en menos", Solutions, enero/febrero de 1987, página 14
  21. ^ Kearns, Patrick, Begur, Sridhar y Fischer, Steve, "Subsistema controlador de disquete de alto rendimiento e integración con el 82072", Intel Corporation, Microcomputer Solutions, noviembre/diciembre de 1987, página 20
  22. ^ Mueller, Scott (2005). "Componentes de la placa base". Actualización y reparación de portátiles de Scott Mueller, segunda edición . Consultado el 5 de septiembre de 2022 .
  23. ^ "FDC37C78 Floppy Disk Controller" (PDF) . SMSC. 2007. Archivado desde el original (PDF) el 13 de diciembre de 2007 . Consultado el 9 de septiembre de 2022 . Controlador de disquete CMOS 765B con licencia
  24. ^ "Controlador de disquete USB USB97CFDC2-01" (PDF) . keil.com . 13 de diciembre de 2001.
  25. ^ Davis, Larry (13 de junio de 2015). "Pinout de la unidad de disquete, nombres de señales, descripción de los pines y cableado trenzado de cables". interfacebus.com . Consultado el 29 de enero de 2019 .
  26. ^ Scott Mueller, Actualización y reparación de PC, segunda edición , Que, 1992, ISBN 0-88022-856-3 , página 487 
  27. ^ Fisher, Tim (18 de enero de 2022). "¿Qué es una unidad de disquete?" . Consultado el 20 de septiembre de 2022 .
  28. ^ Ableman, Genna (2005). Elert, Glenn (ed.). "Velocidad angular de un disquete". The Physics Factbook . Consultado el 25 de enero de 2022 .
  29. ^ "C 64 Workshop / C= 8 Bit & Peripherals". 19 de mayo de 1998. Consultado el 18 de abril de 2016 .
  30. ^ abcdef "unifr.ch – sys/src/kernel/floppy.c". Archivado desde el original el 19 de julio de 2011 . Consultado el 5 de mayo de 2011 .
  31. ^ "Especificación del producto TM100-4 unidad de disco flexible 96, tpi" (PDF) . Consultado el 8 de enero de 2022 .
  32. ^ ab iesleonardo.info – Este tutorial sobre disquetes proporciona información técnica sobre disquetes.
  33. ^ ab oldskool.org – Permitir que las unidades de disco duro de 5,25" funcionen a 300 rpm en lugar de 360 ​​rpm
  34. ^ ab intel.com – Intel 82077SL para disquetes superdensos Archivado el 8 de octubre de 2012 en Wayback Machine
  35. ^ Johnson, Herbert R. (22 de diciembre de 2016). «Floppy Drive Tech Info» (Información técnica de la unidad de disquete) . Consultado el 14 de enero de 2017 .
  36. ^ yi.org – Disquetes de alta densidad Mf2hd Disk 3 5 1 Pk [ enlace muerto permanente ]
  37. ^ mcamafia.de – Unidades de disquete IBM Personal system/2 de 3,5 pulgadas, referencia técnica
  38. ^ "Linux-2.6.17/drivers/block/floppy.c". Archivado desde el original el 23 de agosto de 2008.090504 gelato.unsw.edu.au
  39. ^ books.google.com – Repara tu propia PC por Corey Sandler
  40. ^ rojakpot.com – Compatibilidad con disquetes de 3 modos

Lectura adicional

Enlaces externos