Parallel ATA ( PATA ), originalmente AT Attachment , también conocido como Integrated Drive Electronics ( IDE ), es una interfaz estándar diseñada para computadoras compatibles con IBM PC . Fue desarrollado por primera vez por Western Digital y Compaq en 1986 para discos duros y unidades de CD o DVD compatibles. La conexión se utiliza para dispositivos de almacenamiento como unidades de disco duro , unidades de disquete , unidades de discos ópticos y unidades de cinta en computadoras .
El estándar lo mantiene el comité X3/ INCITS . [1] Utiliza los estándares AT adjuntos (ATA) y de interfaz de paquetes de adjuntos AT ( ATAPI ) subyacentes.
El estándar Parallel ATA es el resultado de una larga historia de desarrollo técnico incremental, que comenzó con la interfaz AT Attachment original, desarrollada para su uso en los primeros equipos PC AT . La propia interfaz ATA evolucionó en varias etapas a partir de la interfaz Integrated Drive Electronics (IDE) original de Western Digital . Como resultado, muchos casi sinónimos de ATA/ATAPI y sus encarnaciones anteriores todavía son de uso informal común, en particular IDE extendido (EIDE) y Ultra ATA (UATA). Después de la introducción de SATA en 2003, el ATA original pasó a llamarse Parallel ATA, o PATA para abreviar.
Los cables ATA paralelos tienen una longitud máxima permitida de 18 pulgadas (457 mm). [2] [3] Debido a este límite, la tecnología normalmente aparece como una interfaz de almacenamiento interno de la computadora. Durante muchos años, ATA proporcionó la interfaz más común y menos costosa para esta aplicación. Ha sido reemplazado en gran medida por SATA en los sistemas más nuevos.
El estándar se concibió originalmente como "AT Bus Adjunto", oficialmente llamado "AT Adjunto" y abreviado "ATA" [4] [5] porque su característica principal era una conexión directa al bus ISA de 16 bits introducido con la PC IBM. /EN . [6] Las especificaciones ATA originales publicadas por los comités de estándares utilizan el nombre "AT Adjunto". [7] [8] [9] El "AT" en IBM PC/AT se refería a "Tecnología avanzada", por lo que ATA también se conoce como "Adjunto de tecnología avanzada". [10] [4] [11] [12] Cuando se introdujo un Serial ATA (SATA) más nuevo en 2003, el ATA original pasó a llamarse Parallel ATA, o PATA para abreviar. [13]
Las interfaces físicas ATA se convirtieron en un componente estándar en todas las PC, inicialmente en adaptadores de bus host, a veces en una tarjeta de sonido, pero finalmente como dos interfaces físicas integradas en un chip Southbridge en una placa base. Llamadas interfaces ATA "primarias" y "secundarias", fueron asignadas a las direcciones base 0x1F0 y 0x170 en los sistemas de bus ISA . Fueron reemplazados por interfaces SATA .
La primera versión de lo que ahora se llama interfaz ATA/ATAPI fue desarrollada por Western Digital con el nombre de Integrated Drive Electronics (IDE). Junto con Compaq (el cliente inicial), trabajaron con varios fabricantes de unidades de disco para desarrollar y comercializar los primeros productos con el objetivo de seguir siendo software compatible con la interfaz de disco duro de PC IBM existente. [14] Las primeras unidades de este tipo aparecieron internamente en las PC Compaq en 1986 [15] [16] y Conner Peripherals las ofreció por primera vez por separado como CP342 en junio de 1987. [17]
El término Electrónica de variador integrada se refiere a que el controlador del variador está integrado en el variador, a diferencia de un controlador separado situado en el otro lado del cable de conexión al variador. En una máquina CP/M , o similar, compatible con IBM PC, normalmente se trataba de una tarjeta instalada en una placa base . Las tarjetas de interfaz utilizadas para conectar una unidad ATA paralela a, por ejemplo, una ranura ISA , no son controladores de unidad: son simplemente puentes entre el bus host y la interfaz ATA . Dado que la interfaz ATA original es esencialmente solo un bus ISA de 16 bits , el puente era especialmente simple en el caso de que un conector ATA estuviera ubicado en una tarjeta de interfaz ISA. El controlador integrado presentaba la unidad a la computadora host como una matriz de bloques de 512 bytes con una interfaz de comando relativamente simple. Esto liberó a la placa base y a las tarjetas de interfaz en la computadora host de la tarea de mover el brazo del cabezal del disco, mover el brazo del cabezal hacia adentro y hacia afuera, etc., como se tenía que hacer con los discos duros ST-506 y ESDI anteriores . Todos estos detalles de bajo nivel del funcionamiento mecánico del variador ahora eran manejados por el controlador en el propio variador. Esto también eliminó la necesidad de diseñar un único controlador que pudiera manejar muchos tipos diferentes de unidades, ya que el controlador podría ser único para la unidad. El host sólo necesita solicitar que se lea o escriba un sector o bloque en particular y aceptar los datos de la unidad o enviarlos.
La interfaz utilizada por estas unidades se estandarizó en 1994 como estándar ANSI X3.221-1994, AT Attachment Interface for Disk Drives . Después de que se desarrollaron versiones posteriores del estándar, este se conoció como "ATA-1". [18] [19]
Se creó una implementación de ATA de corta duración y rara vez utilizada para IBM XT y máquinas similares que usaban la versión de 8 bits del bus ISA. Se le ha denominado "XT-IDE" , "XTA" o "XT Adjunto". [20]
En 1994, casi al mismo tiempo que se adoptó el estándar ATA-1, Western Digital introdujo unidades con un nombre más nuevo, IDE mejorado (EIDE). Estos incluyeron la mayoría de las características de la próxima especificación ATA-2 y varias mejoras adicionales. Otros fabricantes introdujeron sus propias variaciones de ATA-1, como "Fast ATA" y "Fast ATA-2".
La nueva versión del estándar ANSI, AT Attachment Interface with Extensions ATA-2 (X3.279-1996), fue aprobada en 1996. Incluía la mayoría de las características de las variantes específicas del fabricante. [21] [22]
ATA-2 también fue el primero en notar que se podían conectar a la interfaz otros dispositivos además de los discos duros:
3.1.7 Dispositivo: El dispositivo es un periférico de almacenamiento. Tradicionalmente, un dispositivo en la interfaz ATA ha sido una unidad de disco duro, pero se puede colocar cualquier tipo de dispositivo de almacenamiento en la interfaz ATA siempre que cumpla con este estándar.
— Interfaz de conexión AT con extensiones (ATA-2) , página 2 [22]
ATA se diseñó originalmente para unidades de disco duro y dispositivos que podían emularlas, y solo funcionaba con ellas. La introducción de ATAPI (interfaz de paquetes ATA) por parte de un grupo llamado comité de factor de forma pequeño (SFF) permitió que ATA se utilizara para una variedad de otros dispositivos que requieren funciones más allá de las necesarias para las unidades de disco duro. Por ejemplo, cualquier dispositivo de medios extraíbles necesita un comando de "expulsión de medios" y una forma para que el host determine si los medios están presentes, y estos no se proporcionaron en el protocolo ATA.
ATAPI es un protocolo que permite a la interfaz ATA transportar comandos y respuestas SCSI ; por lo tanto, todos los dispositivos ATAPI en realidad "hablan SCSI" fuera de la interfaz eléctrica. Los comandos y respuestas SCSI están integrados en "paquetes" (de ahí la "Interfaz de paquetes ATA") para su transmisión por el cable ATA. Esto permite que cualquier clase de dispositivo para la cual se haya definido un conjunto de comandos SCSI pueda conectarse mediante ATA/ATAPI.
Los dispositivos ATAPI también "hablan ATA", ya que la interfaz física y el protocolo ATA todavía se utilizan para enviar los paquetes. Por otro lado, los discos duros ATA y las unidades de estado sólido no utilizan ATAPI.
Los dispositivos ATAPI incluyen unidades de CD-ROM y DVD-ROM , unidades de cinta y unidades de disquete de gran capacidad , como la unidad Zip y la unidad SuperDisk . Algunos de los primeros dispositivos ATAPI eran simplemente dispositivos SCSI con un convertidor de protocolo ATA/ATAPI a SCSI añadido. [ cita necesaria ]
Los comandos y respuestas SCSI utilizados por cada clase de dispositivo ATAPI (CD-ROM, cinta, etc.) se describen en otros documentos o especificaciones específicas de esas clases de dispositivos y no están dentro del ámbito de ATA/ATAPI o del comité T13 . Un conjunto de uso común se define en el conjunto de comandos MMC SCSI.
ATAPI se adoptó como parte de ATA en INCITS 317-1998, Accesorio AT con extensión de interfaz de paquetes (ATA/ATAPI-4) . [23] [24] [25]
El estándar ATA/ATAPI-4 también introdujo varios modos de transferencia " Ultra DMA ". Estos inicialmente admitían velocidades de 16 a 33 MB/s. En versiones posteriores, se agregaron modos Ultra DMA más rápidos, lo que requirió nuevos cables de 80 hilos para reducir la diafonía. Las últimas versiones de Parallel ATA admiten hasta 133 MB/s.
Ultra ATA, abreviado UATA, es una designación que Western Digital ha utilizado principalmente para diferentes mejoras de velocidad de los estándares ATA/ATAPI. Por ejemplo, en 2000 Western Digital publicó un documento que describía "Ultra ATA/100", que aportaba mejoras de rendimiento para el entonces actual estándar ATA/ATAPI-5 al mejorar la velocidad máxima de la interfaz Parallel ATA de 66 a 100 MB/s. [26] La mayoría de los cambios de Western Digital, junto con otros, se incluyeron en el estándar ATA/ATAPI-6 (2002).
Inicialmente, el tamaño de una unidad ATA se almacenaba en el BIOS x86 del sistema utilizando un número de tipo (del 1 al 45) que predefinía los parámetros C/H/S [27] y, a menudo, también la zona de aterrizaje, en la que se estacionan los cabezales de la unidad. mientras no esté en uso. Posteriormente, se puso a disposición un formato "definible por el usuario" [27] llamado C/H/S o cilindros, culatas, sectores. Estos números eran importantes para la interfaz ST-506 anterior, pero generalmente no tenían sentido para ATA: los parámetros CHS para unidades ATA grandes posteriores a menudo especificaban números increíblemente altos de cabezales o sectores que en realidad no definían el diseño físico interno de la unidad en absoluto. . Desde el principio, y hasta ATA-2, cada usuario tenía que especificar explícitamente el tamaño de cada unidad conectada. A partir de ATA-2, se implementó un comando de "identificar unidad" que se puede enviar y que devolverá todos los parámetros de la unidad.
Debido a la falta de previsión por parte de los fabricantes de placas base, el BIOS del sistema a menudo se veía obstaculizado por limitaciones artificiales de tamaño de C/H/S debido a que el fabricante asumía que ciertos valores nunca excederían un máximo numérico particular.
El primero de estos límites de BIOS se produjo cuando las unidades ATA alcanzaron tamaños superiores a 504 MiB , porque algunas BIOS de placas base no permitían valores C/H/S superiores a 1024 cilindros, 16 cabezales y 63 sectores. Multiplicado por 512 bytes por sector, esto suma 528 482 304 bytes que, divididos por 1 048 576 bytes por MiB , equivalen a 504 MiB (528 MB ).
La segunda de estas limitaciones del BIOS se produjo en 1024 cilindros , 256 cabezales y 63 sectores , y un problema en MS-DOS limitó el número de cabezales a 255. Esto suma un total de 8 422 686 720 bytes (8032,5 MiB ), comúnmente conocido como la barrera de los 8,4 gigabytes. Este es nuevamente un límite impuesto por las BIOS x86 y no un límite impuesto por la interfaz ATA.
Finalmente se determinó que estas limitaciones de tamaño podían anularse con un pequeño programa cargado al inicio desde el sector de arranque de un disco duro. Algunos fabricantes de discos duros, como Western Digital, comenzaron a incluir estas utilidades de anulación en discos duros grandes para ayudar a superar estos problemas. Sin embargo, si la computadora se inició de alguna otra manera sin cargar la utilidad especial, se usarían configuraciones de BIOS no válidas y la unidad podría quedar inaccesible o parecerle al sistema operativo que está dañada.
Posteriormente, se puso a disposición una extensión de los servicios de disco del BIOS x86 llamada " Unidad de disco mejorada " (EDD), que permite direccionar unidades de hasta 2 64 sectores. [28]
La primera interfaz de unidad utilizaba un modo de direccionamiento de 22 bits, lo que daba como resultado una capacidad máxima de unidad de dos gigabytes. Posteriormente, la primera especificación ATA formalizada utilizó un modo de direccionamiento de 28 bits a través de LBA28 , lo que permitía el direccionamiento de 2 28 ( 268 435 456 ) sectores (bloques) de 512 bytes cada uno, lo que daba como resultado una capacidad máxima de 128 GiB (137 GB ). . [29]
ATA-6 introdujo el direccionamiento de 48 bits, aumentando el límite a 128 PiB (144 PB ). Como consecuencia, cualquier unidad ATA con una capacidad superior a 137 GB debe ser una unidad ATA-6 o posterior. Conectar una unidad de este tipo a un host con una interfaz ATA-5 o anterior limitará la capacidad utilizable al máximo de la interfaz.
Algunos sistemas operativos, incluidos Windows XP anterior a SP1 y Windows 2000 anterior a SP3, desactivan LBA48 de forma predeterminada, lo que requiere que el usuario tome medidas adicionales para utilizar toda la capacidad de una unidad ATA de más de 137 gigabytes. [30]
Los sistemas operativos más antiguos, como Windows 98 , no admiten LBA de 48 bits en absoluto. Sin embargo, los miembros del grupo de terceros MSFN [31] han modificado los controladores de disco de Windows 98 para agregar soporte no oficial para LBA de 48 bits a Windows 95 OSR2 , Windows 98 , Windows 98 SE y Windows ME .
Es posible que algunos sistemas operativos de 16 y 32 bits que admiten LBA48 aún no admitan discos de más de 2 TiB debido a que utilizan únicamente aritmética de 32 bits; una limitación que también se aplica a muchos sectores de arranque .
Parallel ATA (entonces simplemente llamado ATA o IDE) se convirtió en la principal interfaz de dispositivo de almacenamiento para PC poco después de su introducción. En algunos sistemas, se proporcionó una tercera y cuarta interfaz de placa base, lo que permitió conectar hasta ocho dispositivos ATA a la placa base. A menudo, estos conectores adicionales se implementaban mediante controladores RAID económicos .
Poco después de la introducción de Serial ATA (SATA) en 2003, el uso de Parallel ATA disminuyó. Algunas PC y portátiles de la época tienen un disco duro SATA y una unidad óptica conectada a PATA.
A partir de 2007, algunos conjuntos de chips de PC , por ejemplo el Intel ICH10, habían eliminado el soporte para PATA. Los proveedores de placas base que aún deseen ofrecer ATA paralelo con esos conjuntos de chips deben incluir un chip de interfaz adicional. En las computadoras más recientes, la interfaz Parallel ATA rara vez se usa, incluso si está presente, ya que generalmente se proporcionan cuatro o más conectores Serial ATA en la placa base y los dispositivos SATA de todo tipo son comunes.
Con la retirada de Western Digital del mercado PATA, las unidades de disco duro con interfaz PATA dejaron de producirse después de diciembre de 2013 para aplicaciones distintas a las especializadas. [32]
Los cables ATA paralelos transfieren datos de 16 bits a la vez. El cable tradicional utiliza conectores de desplazamiento de aislamiento (IDC) hembra de 40 pines conectados a un cable plano de 40 u 80 conductores . Cada cable tiene dos o tres conectores, uno de los cuales se conecta a un adaptador de host que interactúa con el resto del sistema informático. Los conectores restantes se conectan a dispositivos de almacenamiento, más comúnmente unidades de disco duro o unidades ópticas. Cada conector tiene 39 pines físicos dispuestos en dos filas (2,54 mm, paso de 1 ⁄ 10 pulgadas), con un espacio o llave en el pin 20. Es posible que los conectores anteriores no tengan ese espacio, con los 40 pines disponibles. Por tanto, los cables posteriores con el espacio rellenado son incompatibles con los conectores anteriores, aunque los cables anteriores son compatibles con los conectores posteriores.
Los cables ATA paralelos redondos (a diferencia de los cables planos) finalmente se pusieron a disposición de los ' modificadores de carcasas ' por razones estéticas, así como por afirmaciones de que la computadora tenía mejor refrigeración y eran más fáciles de manejar; sin embargo, las especificaciones ATA solo admiten cables planos.
Se utiliza una variante del conector PATA de 44 pines para unidades de 2,5 pulgadas dentro de las computadoras portátiles. Los pines están más juntos (paso de 2,0 mm) y el conector es físicamente más pequeño que el conector de 40 pines. Los pines adicionales transportan energía.
Los cables de ATA han tenido 40 conductores durante la mayor parte de su historia (44 conductores para la versión de factor de forma más pequeño utilizada para unidades de 2,5 pulgadas; los cuatro adicionales para alimentación), pero apareció una versión de 80 conductores con la introducción del modo UDMA/66. Todos los conductores adicionales en el nuevo cable son tierra , entrelazados con los conductores de señal para reducir los efectos del acoplamiento capacitivo entre conductores de señal vecinos, lo que reduce la diafonía . El acoplamiento capacitivo es un problema mayor a velocidades de transferencia más altas, y este cambio era necesario. para permitir que la velocidad de transferencia de 66 megabytes por segundo (MB/s) de UDMA4 funcione de manera confiable. Los modos más rápidos UDMA5 y UDMA6 también requieren cables de 80 conductores.
Aunque la cantidad de conductores se duplicó, la cantidad de clavijas del conector y la distribución de clavijas siguen siendo las mismas que las de los cables de 40 conductores, y la apariencia externa de los conectores es idéntica. Internamente, los conectores son diferentes; los conectores para el cable de 80 conductores conectan una mayor cantidad de conductores de tierra a las clavijas de tierra, mientras que los conectores para el cable de 40 conductores conectan conductores de tierra a las clavijas de tierra uno a uno. Los cables de 80 conductores generalmente vienen con tres conectores de diferentes colores (azul, negro y gris para el controlador, la unidad maestra y la unidad esclava, respectivamente) a diferencia de los conectores de los cables de 40 conductores de colores uniformes (comúnmente todos grises). El conector gris en los cables de 80 conductores tiene el pin 28 CSEL no conectado, lo que lo convierte en la posición esclava para la selección de cable configurado para unidades.
Si se conectan dos dispositivos a un solo cable, uno debe designarse como Dispositivo 0 (en el pasado, comúnmente designado como maestro ) y el otro como Dispositivo 1 (en el pasado, comúnmente designado como esclavo ). [35] Esta distinción es necesaria para permitir que ambas unidades compartan el cable sin conflictos. La unidad del Dispositivo 0 es la unidad que normalmente aparece "primero" en el BIOS y/o el sistema operativo de la computadora . En la mayoría de las computadoras personales, las unidades suelen designarse como "C:" para el Dispositivo 0 y "D:" para el Dispositivo 1 , en referencia a una partición primaria activa en cada una.
El modo que debe usar un dispositivo a menudo se establece mediante una configuración de puente en el propio dispositivo, que debe configurarse manualmente en Dispositivo 0 ( Maestro ) o Dispositivo 1 ( Esclavo ). Si hay un solo dispositivo en un cable, debe configurarse como Dispositivo 0 . Sin embargo, algunas unidades de cierta época tienen una configuración especial llamada Single para esta configuración (Western Digital, en particular). Además, dependiendo del hardware y software disponible, una unidad única en un cable a menudo funcionará de manera confiable incluso si está configurada como la unidad del Dispositivo 1 (se ve con mayor frecuencia cuando una unidad óptica es el único dispositivo en la interfaz ATA secundaria).
Las palabras primario y secundario generalmente se refieren a los dos cables IDE, que pueden tener dos unidades cada uno (maestro primario, esclavo primario, maestro secundario, esclavo secundario).
Hay muchos debates sobre cuánto puede afectar un dispositivo lento al rendimiento de un dispositivo más rápido en el mismo cable. En los primeros adaptadores de host ATA, las transferencias de datos de ambos dispositivos pueden limitarse a la velocidad del dispositivo más lento, si dos dispositivos con capacidades de velocidad diferentes están en el mismo cable. Para todos los adaptadores de host ATA modernos, esto no es cierto, ya que los adaptadores de host ATA modernos admiten sincronización de dispositivo independiente . Esto permite que cada dispositivo del cable transfiera datos a su mejor velocidad. Incluso con adaptadores anteriores sin temporización independiente, este efecto se aplica sólo a la fase de transferencia de datos de una operación de lectura o escritura. [36] Esto se debe a la omisión de conjuntos de funciones superpuestas y en cola de la mayoría de los productos ATA paralelos. Sólo un dispositivo en un cable puede realizar una operación de lectura o escritura a la vez; por lo tanto, un dispositivo rápido conectado al mismo cable que un dispositivo lento sometido a un uso intensivo tendrá que esperar a que el dispositivo lento complete su tarea primero. Sin embargo, la mayoría de los dispositivos modernos informarán que las operaciones de escritura se han completado una vez que los datos se almacenen en su memoria caché integrada, antes de que los datos se escriban en el almacenamiento magnético (lento). Esto permite enviar comandos al otro dispositivo en el cable, lo que reduce el impacto del límite de "una operación a la vez". El impacto de esto en el rendimiento de un sistema depende de la aplicación. Por ejemplo, al copiar datos de una unidad óptica a un disco duro (como durante la instalación del software), este efecto probablemente no importe. Estos trabajos están necesariamente limitados por la velocidad de la unidad óptica, sin importar dónde se encuentre. Pero si también se espera que el disco duro en cuestión proporcione un buen rendimiento para otras tareas al mismo tiempo, probablemente no debería estar en el mismo cable que la unidad óptica.
Un modo de unidad llamado selección de cable se describió como opcional en ATA-1 y se ha utilizado bastante ampliamente con ATA-5 y posteriores. Una unidad configurada para "selección de cable" se configura automáticamente como Dispositivo 0 o Dispositivo 1 , según su posición en el cable. La selección de cable se controla mediante el pin 28. El adaptador host conecta a tierra este pin; si un dispositivo ve que el pin está conectado a tierra, se convierte en el dispositivo 0 (maestro); si ve que el pin 28 está abierto, el dispositivo se convierte en el dispositivo 1 (esclavo).
Esta configuración generalmente se elige mediante una configuración de puente en la unidad llamada "selección de cable", generalmente marcada como CS , que está separada de la configuración del Dispositivo 0/1 .
Si dos unidades se configuran manualmente como Dispositivo 0 y Dispositivo 1 , no es necesario que esta configuración corresponda a su posición en el cable. El pin 28 sólo se utiliza para que los variadores sepan su posición en el cable; el host no lo utiliza cuando se comunica con las unidades. En otras palabras, la configuración manual maestro/esclavo mediante puentes en las unidades tiene prioridad y permite colocarlos libremente en cualquier conector del cable plano.
Con el cable de 40 conductores, era muy común implementar la selección de cable simplemente cortando el cable del pin 28 entre los dos conectores del dispositivo; colocando el dispositivo esclavo 1 en el extremo del cable y el dispositivo maestro 0 en el conector del medio. Esta disposición finalmente se estandarizó en versiones posteriores. Sin embargo, tenía un inconveniente: si hay solo un dispositivo maestro en un cable de 2 unidades, usando el conector del medio, esto resulta en un trozo de cable no utilizado, lo cual no es deseable por razones de conveniencia física y eléctrica. El trozo provoca reflejos de la señal , especialmente a velocidades de transferencia más altas.
Comenzando con el cable de 80 conductores definido para su uso en ATAPI5/UDMA4, el dispositivo maestro 0 va en el extremo alejado del host del cable de 18 pulgadas (460 mm) en el conector negro, el esclavo Dispositivo 1 va al conector gris del medio y el conector azul va al host (por ejemplo, conector IDE de la placa base o tarjeta IDE). Por lo tanto, si solo hay un dispositivo ( Dispositivo 0 ) en un cable de dos unidades, que utiliza el conector negro, no hay ningún trozo de cable que cause reflejos (el conector no utilizado ahora está en el medio de la cinta). Además, la selección de cable ahora se implementa en el conector del dispositivo gris del medio, generalmente simplemente omitiendo el contacto del pin 28 del cuerpo del conector.
Los protocolos ATA paralelos hasta ATA-3 requieren que una vez que se haya dado un comando en una interfaz ATA, se debe completar antes de que se pueda dar cualquier comando posterior. Las operaciones en los dispositivos deben serializarse—con solo una operación en progreso a la vez—con respecto a la interfaz del host ATA. Un modelo mental útil es que la interfaz ATA del host está ocupada con la primera solicitud durante toda su duración y, por lo tanto, no se le puede informar sobre otra solicitud hasta que se complete la primera. La función de serializar solicitudes a la interfaz generalmente la realiza un controlador de dispositivo en el sistema operativo host.
El ATA-4 y las versiones posteriores de la especificación han incluido un "conjunto de características superpuestas" y un "conjunto de características en cola" como características opcionales, y ambas reciben el nombre de " Cola de comandos etiquetada " (TCQ), una referencia a un conjunto de características. desde SCSI que la versión ATA intenta emular. Sin embargo, la compatibilidad con estos es extremadamente rara en los productos y controladores de dispositivos ATA paralelos reales porque estos conjuntos de características se implementaron de tal manera que mantuvieran la compatibilidad del software con su herencia como originalmente una extensión del bus ISA. Esta implementación resultó en una utilización excesiva de la CPU, lo que anuló en gran medida las ventajas de la cola de comandos. Por el contrario, las operaciones superpuestas y en cola han sido comunes en otros autobuses de almacenamiento; en particular, la versión SCSI de la cola de comandos etiquetada no tenía necesidad de ser compatible con las API diseñadas para ISA, lo que le permitía alcanzar un alto rendimiento con bajos gastos generales en buses que admitían DMA de origen como PCI. Esto se ha considerado durante mucho tiempo como una de las principales ventajas de SCSI.
El estándar Serial ATA ha admitido la cola de comandos nativa (NCQ) desde su primera versión, pero es una característica opcional tanto para los adaptadores host como para los dispositivos de destino. Muchas placas base de PC obsoletas no son compatibles con NCQ, pero las unidades de disco duro SATA modernas y las unidades de estado sólido SATA suelen admitir NCQ, lo que no es el caso de las unidades extraíbles (CD/DVD) porque el conjunto de comandos ATAPI utilizado para controlarlas prohíbe las operaciones en cola. .
Los dispositivos ATA pueden admitir una característica de seguridad opcional que se define en una especificación ATA y, por lo tanto, no es específica de ninguna marca o dispositivo. La función de seguridad se puede habilitar y deshabilitar enviando comandos ATA especiales a la unidad. Si un dispositivo está bloqueado, rechazará todo acceso hasta que se desbloquee. Un dispositivo puede tener dos contraseñas: una Contraseña de Usuario y una Contraseña Maestra; Se puede configurar uno o ambos. Existe una función de identificador de Contraseña maestra que, si se admite y utiliza, puede identificar la Contraseña maestra actual (sin revelarla). La contraseña maestra, si está configurada, puede ser utilizada por el administrador para cancelar dos contraseñas (maestra y de usuario) si el usuario final olvidó la contraseña de usuario. En algunas computadoras portátiles y en algunas computadoras comerciales, su BIOS puede controlar las contraseñas ATA. [37]
Un dispositivo se puede bloquear en dos modos: modo de alta seguridad o modo de máxima seguridad. El bit 8 en la palabra 128 de la respuesta IDENTIFICAR muestra en qué modo se encuentra el disco: 0 = Alto, 1 = Máximo. En el modo de alta seguridad, el dispositivo se puede desbloquear con la contraseña de usuario o maestra, utilizando el comando ATA "SECURITY UNLOCK DEVICE". Hay un límite de intentos, normalmente establecido en 5, después del cual se debe reiniciar el disco o reiniciarlo antes de poder intentar desbloquearlo nuevamente. También en el modo de alta seguridad, el comando SECURITY ERASE UNIT se puede utilizar con la contraseña de usuario o maestra. En el modo de Máxima seguridad, el dispositivo se puede desbloquear sólo con la contraseña de Usuario. Si la contraseña de usuario no está disponible, la única forma que queda para que al menos el hardware básico vuelva a un estado utilizable es emitir el comando SECURITY ERASE PREPARE, seguido inmediatamente por SECURITY ERASE UNIT. En el modo de máxima seguridad, el comando SECURITY ERASE UNIT requiere la contraseña maestra y borrará completamente todos los datos del disco. La palabra 89 en la respuesta IDENTIFICAR indica cuánto tiempo llevará la operación. [38] Si bien se pretende que el bloqueo ATA sea imposible de anular sin una contraseña válida, existen supuestas soluciones para desbloquear un dispositivo. [ cita necesaria ]
Para las unidades NVMe , las funciones de seguridad, incluidas las contraseñas de bloqueo, se definieron en el estándar OPAL . [39]
Para desinfectar discos completos, el comando de borrado seguro integrado es eficaz cuando se implementa correctamente. [40] Ha habido algunos casos reportados de fallas al borrar algunos o todos los datos. [41] [42] [40] En algunas computadoras portátiles y algunas computadoras comerciales, su BIOS puede utilizar Secure Erase para borrar todos los datos del disco.
Debido a una especificación de longitud de cable corta y problemas de blindaje, es extremadamente raro encontrar dispositivos PATA externos que utilicen PATA directamente para conectarse a una computadora. Un dispositivo conectado externamente necesita una longitud de cable adicional para formar una curva en forma de U de modo que el dispositivo externo pueda colocarse al lado o encima de la carcasa de la computadora, y la longitud del cable estándar es demasiado corta para permitir esto. Para facilitar el acceso desde la placa base al dispositivo, los conectores tienden a ubicarse hacia el borde frontal de las placas base, para la conexión a dispositivos que sobresalen del frente de la carcasa de la computadora. Esta posición del borde frontal hace aún más difícil la extensión desde la parte posterior hasta un dispositivo externo. Los cables planos están mal blindados y el estándar depende de que el cableado se instale dentro de una carcasa de computadora blindada para cumplir con los límites de emisiones de RF.
Las unidades de disco duro externas o las unidades de disco óptico que tienen una interfaz PATA interna utilizan alguna otra tecnología de interfaz para salvar la distancia entre el dispositivo externo y la computadora. USB es la interfaz externa más común, seguida de Firewire. Un chip puente dentro de los dispositivos externos convierte de la interfaz USB a PATA y, por lo general, solo admite un único dispositivo externo sin selección de cable o maestro/esclavo.
La siguiente tabla muestra los nombres de las versiones de los estándares ATA y los modos y tarifas de transferencia admitidos por cada uno. Tenga en cuenta que la velocidad de transferencia para cada modo (por ejemplo, 66,7 MB/s para UDMA4, comúnmente llamado "Ultra-DMA 66", definido por ATA-5) da su velocidad de transferencia teórica máxima en el cable. Esto es simplemente dos bytes multiplicados por la velocidad de reloj efectiva y supone que cada ciclo de reloj se utiliza para transferir datos del usuario final. En la práctica, por supuesto, la sobrecarga del protocolo reduce este valor.
La congestión en el bus host al que está conectado el adaptador ATA también puede limitar la velocidad máxima de transferencia en ráfaga. Por ejemplo, la velocidad máxima de transferencia de datos para un bus PCI convencional es de 133 MB/s, y se comparte entre todos los dispositivos activos en el bus.
Además, en 2005 no existían discos duros ATA que fueran capaces de medir velocidades de transferencia sostenidas superiores a 80 MB/s. Además, las pruebas de velocidad de transferencia sostenida no brindan expectativas de rendimiento realistas para la mayoría de las cargas de trabajo: utilizan cargas de E/S diseñadas específicamente para casi no encontrar retrasos por el tiempo de búsqueda o la latencia rotacional. El rendimiento del disco duro en la mayoría de las cargas de trabajo está limitado, en primer y segundo lugar, por esos dos factores; la tasa de transferencia en autobús ocupa un distante tercer lugar en importancia. Por lo tanto, los límites de velocidad de transferencia superiores a 66 MB/s realmente afectan el rendimiento sólo cuando el disco duro puede satisfacer todas las solicitudes de E/S leyendo desde su caché interno , una situación muy inusual, especialmente considerando que dichos datos generalmente ya están almacenados en el buffer del sistema operativo. .
A partir de julio de 2021 [actualizar], las unidades de disco duro mecánicas pueden transferir datos a una velocidad de hasta 524 MB/s, [43] lo que supera con creces las capacidades de la especificación PATA/133. Las unidades de estado sólido de alto rendimiento pueden transferir datos a una velocidad de hasta 7000-7500 MB/s. [44]
Sólo los modos Ultra DMA utilizan CRC para detectar errores en la transferencia de datos entre el controlador y la unidad. Este es un CRC de 16 bits y se utiliza únicamente para bloques de datos. La transmisión de bloques de comando y estado no utiliza los métodos de señalización rápida que requerirían CRC. A modo de comparación, en Serial ATA, se utiliza CRC de 32 bits tanto para comandos como para datos. [45]
Los dispositivos ATAPI con medios extraíbles, distintos de las unidades de CD y DVD, se clasifican como ARMD (dispositivo de medios extraíbles ATAPI) y pueden aparecer como un superdisquete (medios no particionados) o un disco duro (medios particionados) para el sistema operativo. . Estos pueden ser compatibles como dispositivos de arranque mediante un BIOS que cumpla con la especificación BIOS de dispositivos de medios extraíbles ATAPI , [50] desarrollada originalmente por Compaq Computer Corporation y Phoenix Technologies . Especifica disposiciones en el BIOS de una computadora personal para permitir que la computadora se inicie desde dispositivos como unidades Zip , unidades Jaz , unidades SuperDisk (LS-120) y dispositivos similares.
Estos dispositivos tienen medios extraíbles como unidades de disquete , pero capacidades más acordes con los discos duros y requisitos de programación diferentes a ambos. Debido a limitaciones en la interfaz del controlador de disquete, la mayoría de estos dispositivos eran dispositivos ATAPI , conectados a una de las interfaces ATA de la computadora host, de manera similar a un disco duro o un dispositivo de CD-ROM . Sin embargo, los estándares de BIOS existentes no eran compatibles con estos dispositivos. Un BIOS compatible con ARMD permite que estos dispositivos se inicien y utilicen bajo el sistema operativo sin requerir un código específico del dispositivo en el sistema operativo.
Un BIOS que implementa ARMD permite al usuario incluir dispositivos ARMD en el orden de búsqueda de inicio. Por lo general, un dispositivo ARMD se configura antes en el orden de inicio que el disco duro. De manera similar a una unidad de disquete, si hay un dispositivo de arranque en la unidad ARMD, el BIOS arrancará desde allí; de lo contrario, el BIOS continuará en el orden de búsqueda, normalmente con el disco duro al final.
Hay dos variantes de ARMD, ARMD-FDD y ARMD-HDD. Originalmente, ARMD hacía que los dispositivos aparecieran como una especie de unidad de disquete muy grande, ya sea el dispositivo de unidad de disquete principal 00h o el dispositivo secundario 01h. Algunos sistemas operativos requirieron cambios de código para admitir disquetes con capacidades mucho mayores que cualquier unidad de disquete estándar. Además, la emulación de unidad de disquete estándar demostró ser inadecuada para ciertas unidades de disquete de alta capacidad, como las unidades Iomega Zip . Posteriormente, se desarrolló la variante ARMD-HDD, ARMD-"Dispositivo de disco duro", para abordar estos problemas. En ARMD-HDD, un dispositivo ARMD aparece ante el BIOS y el sistema operativo como un disco duro.
En agosto de 2004, Sam Hopkins y Brantley Coile de Coraid especificaron un protocolo ATA sobre Ethernet ligero para transportar comandos ATA a través de Ethernet en lugar de conectarlos directamente a un adaptador de host PATA. Esto permitió reutilizar el protocolo de bloque establecido en aplicaciones de red de área de almacenamiento (SAN).
Compact Flash en su modo IDE es esencialmente una interfaz ATA miniaturizada, diseñada para su uso en dispositivos que utilizan almacenamiento de memoria flash. No se requieren chips ni circuitos de interfaz, aparte de adaptar directamente el zócalo CF más pequeño al conector ATA más grande. (Aunque la mayoría de las tarjetas CF solo admiten el modo IDE hasta PIO4, lo que las hace mucho más lentas en el modo IDE que su velocidad compatible con CF [51] )
La especificación del conector ATA no incluye pines para suministrar energía a un dispositivo CF, por lo que la energía se inserta en el conector desde una fuente separada. La excepción a esto es cuando el dispositivo CF está conectado a un bus ATA de 44 pines diseñado para unidades de disco duro de 2,5 pulgadas, que se encuentran comúnmente en computadoras portátiles, ya que esta implementación de bus debe proporcionar energía a una unidad de disco duro estándar.
Los dispositivos CF se pueden designar como dispositivos 0 o 1 en una interfaz ATA, aunque dado que la mayoría de los dispositivos CF ofrecen solo un conector, no es necesario ofrecer esta selección a los usuarios finales. Aunque CF se puede conectar en caliente con métodos de diseño adicionales, de forma predeterminada, cuando se conecta directamente a una interfaz ATA, no está diseñado para ser conectable en caliente.
{{cite book}}
: Mantenimiento CS1: nombres numéricos: lista de autores ( enlace ){{cite book}}
: Mantenimiento CS1: nombres numéricos: lista de autores ( enlace ){{cite book}}
: Mantenimiento CS1: nombres numéricos: lista de autores ( enlace )HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\atapi\Parameters\EnableBigLba = 1
.