La arquitectura estándar de la industria ( ISA ) es el bus interno de 16 bits de los ordenadores IBM PC/AT y similares basados en el Intel 80286 y sus sucesores inmediatos durante la década de 1980. El bus era (en gran medida) compatible con versiones anteriores con el bus de 8 bits del IBM PC basado en el 8088 , incluidos el IBM PC/XT y los compatibles con IBM PC .
Originalmente conocido como bus PC (8 bits) o bus AT (16 bits), IBM también lo denominó canal de E/S . El término ISA fue acuñado como un retrónimo por los fabricantes de clones de IBM PC a finales de la década de 1980 o principios de la de 1990 como reacción a los intentos de IBM de reemplazar el bus AT con su nueva e incompatible arquitectura Micro Channel .
El bus ISA de 16 bits también se utilizó con procesadores de 32 bits durante varios años. Sin embargo, el intento de extenderlo a 32 bits, denominado Arquitectura Estándar Industrial Extendida (EISA), no tuvo mucho éxito. En su lugar, se utilizaron buses posteriores como VESA Local Bus y PCI , a menudo junto con ranuras ISA en la misma placa base . Derivados de la estructura del bus AT se utilizaron y aún se utilizan en ATA/IDE , el estándar PCMCIA , CompactFlash , el bus PC/104 y, internamente, en los chips Super I/O .
Aunque la arquitectura ISA desapareció de los ordenadores de sobremesa para consumidores hace muchos años, todavía se utiliza en ordenadores industriales , donde se emplean ciertas tarjetas de expansión especializadas que nunca se adaptaron a PCI y PCI Express.
Historia



El bus PC original fue desarrollado por un equipo liderado por Mark Dean en IBM como parte del proyecto IBM PC en 1981. [ 2 ] Era un bus de 8 bits basado en el bus de E/S del sistema IBM System/23 Datamaster ; utilizaba el mismo conector físico y un protocolo de señal y pinout similares. [ 3 ] Una versión de 16 bits, el bus IBM AT , se introdujo con el lanzamiento del IBM PC/AT en 1984. El bus AT era una extensión mayormente retrocompatible del bus PC ; el conector del bus AT era un superconjunto del conector del bus PC. En 1988, el estándar EISA de 32 bits fue propuesto por el grupo Gang of Nine de fabricantes compatibles con PC que incluía a Compaq. Compaq creó el término Industry Standard Architecture (ISA) para reemplazar PC compatible . [ 4 ] En el proceso, cambiaron retroactivamente el nombre del bus AT a ISA para evitar infringir la marca registrada de IBM en sus sistemas PC y PC/AT (y para evitar darle publicidad gratuita a su principal competidor, IBM).
IBM diseñó la versión de 8 bits como una interfaz con búfer para los buses de la placa base de la CPU Intel 8088 (16/8 bits) en los IBM PC y PC/XT, con interrupciones priorizadas y canales DMA. La versión de 16 bits fue una actualización para los buses de la placa base de la CPU Intel 80286 (con funciones de interrupción y DMA ampliadas) utilizada en el IBM AT, con soporte mejorado para el control maestro del bus. Por lo tanto, el bus ISA era síncrono con el reloj de la CPU hasta que los chipsets implementaron métodos de almacenamiento en búfer más sofisticados para conectar la ISA a CPUs mucho más rápidas.
ISA fue diseñado para conectar tarjetas periféricas a la placa base y permite el bus mastering . Solo los primeros 16 MB de memoria principal son direccionables. El bus original de 8 bits funcionaba con el reloj de 4,77 MHz de la CPU 8088 en los IBM PC y PC/XT. El bus original de 16 bits funcionaba con el reloj de la CPU 80286 en las computadoras IBM PC/AT, que era de 6 MHz en los primeros modelos y de 8 MHz en los modelos posteriores. El IBM RT PC también usó el bus de 16 bits. ISA también se usó en algunas máquinas no compatibles con IBM, como las estaciones de trabajo Apollo (68020) y Amiga 3000 (68030) basadas en Motorola 68k , el efímero AT&T Hobbit y el posterior BeBox basado en PowerPC .
Empresas como Dell mejoraron el rendimiento del bus AT [ 5 ], pero en 1987, IBM reemplazó el bus AT con su arquitectura propietaria Micro Channel Architecture (MCA). MCA superó muchas de las limitaciones entonces evidentes en ISA, pero también fue un esfuerzo de IBM por recuperar el control de la arquitectura de PC y el mercado de PC. MCA era mucho más avanzada que ISA y tenía muchas características que luego aparecerían en PCI. Sin embargo, MCA también era un estándar cerrado, mientras que IBM había publicado especificaciones completas y esquemas de circuitos para ISA. Los fabricantes de computadoras respondieron a MCA desarrollando la arquitectura Extended Industry Standard Architecture (EISA) y, posteriormente, el VESA Local Bus (VLB). VLB utilizó algunas piezas electrónicas originalmente destinadas a MCA porque los fabricantes de componentes ya estaban equipados para fabricarlas. Tanto EISA como VLB fueron expansiones retrocompatibles del bus AT (ISA).
Los usuarios de máquinas basadas en ISA debían conocer información específica sobre el hardware que añadían al sistema. Si bien algunos dispositivos eran prácticamente plug-and-play , esto era poco común. Con frecuencia, los usuarios debían configurar parámetros al añadir un nuevo dispositivo, como la línea IRQ , la dirección de E/S o el canal DMA . MCA eliminó esta complicación y PCI incorporó muchas de las ideas exploradas inicialmente con MCA, aunque derivó más directamente de EISA.
Este problema de configuración finalmente llevó a la creación de ISA PnP , un sistema plug-and-play que utilizaba una combinación de modificaciones en el hardware, la BIOS del sistema y el software del sistema operativo para gestionar automáticamente la asignación de recursos. En realidad, ISA PnP podía resultar problemático y no obtuvo un buen soporte hasta que la arquitectura estaba en sus últimas etapas.
Un dispositivo PnP ISA, EISA o VLB puede tener un ID EISA de 5 bytes (ID del fabricante de 3 bytes + número hexadecimal de 2 bytes) para identificarlo. Por ejemplo, CTL0044 corresponde a Creative Sound Blaster 16/32 PnP.
Las ranuras PCI fueron los primeros puertos de expansión físicamente incompatibles que desplazaron directamente a ISA de la placa base. Al principio, las placas base eran mayoritariamente ISA, incluyendo algunas ranuras PCI. A mediados de la década de 1990, los dos tipos de ranuras estaban más o menos equilibrados, y las ranuras ISA pronto se convirtieron en minoría en los sistemas de consumo. La especificación PC-99 de Microsoft recomendó la eliminación total de las ranuras ISA, aunque la arquitectura del sistema aún requería que ISA estuviera presente de alguna forma vestigial internamente para gestionar la unidad de disquete , los puertos serie , etc., razón por la cual se creó el bus LPC compatible con software . Las ranuras ISA se mantuvieron durante algunos años más y, hacia el cambio de siglo, era común ver sistemas con un puerto de gráficos acelerados (AGP) cerca de la unidad central de procesamiento , una matriz de ranuras PCI y una o dos ranuras ISA cerca del final. A finales de 2008, incluso las unidades de disquete y los puertos serie estaban desapareciendo, y la extinción de la ISA vestigial (para entonces el bus LPC) de los chipsets se vislumbraba en el horizonte.
Las ranuras PCI están giradas en comparación con sus contrapartes ISA : las tarjetas PCI se insertaban prácticamente al revés, lo que permitía que los conectores ISA y PCI se acoplaran en la placa base. Solo se puede usar uno de los dos conectores en cada ranura a la vez, pero esto brindaba mayor flexibilidad.
La interfaz de disco duro AT Attachment (ATA) desciende directamente de la ISA de 16 bits del PC/AT. ATA tiene su origen en el IBM Personal Computer Fixed Disk and Diskette Adapter, la tarjeta controladora de disquete y disco duro de doble función estándar para el IBM PC AT; el controlador de disco fijo de esta tarjeta implementaba el conjunto de registros y el conjunto de comandos básicos que se convirtieron en la base de la interfaz ATA (y que difería enormemente de la interfaz de la tarjeta controladora de disco fijo de IBM para el PC XT). Los precursores directos de ATA fueron las tarjetas de hardware ISA de terceros que integraban una unidad de disco duro (HDD) y un controlador de disco duro (HDC) en una sola tarjeta. Esto resultaba, en el mejor de los casos, incómodo y, en el peor, perjudicial para la placa base, ya que las ranuras ISA no estaban diseñadas para soportar dispositivos tan pesados como los HDD. La siguiente generación de unidades Integrated Drive Electronics trasladó tanto la unidad como el controlador a una bahía de unidad y utilizó un cable plano y una placa de interfaz muy sencilla para conectarlo a una ranura ISA. ATA es básicamente una estandarización de esta configuración, además de una estructura de comandos uniforme para que el software interactúe con el HDC dentro de la unidad. Posteriormente, ATA se separó del bus ISA y se conectó directamente al bus local, generalmente mediante su integración en el chipset, para lograr velocidades de reloj y rendimiento de datos mucho mayores que los que ISA podía soportar. ATA presenta características propias de ISA de 16 bits, como un tamaño de transferencia de 16 bits, la sincronización de señales en los modos PIO y los mecanismos de interrupción y DMA.
Arquitectura de bus ISA
El bus PC/XT es un bus ISA de ocho bits utilizado por los sistemas Intel 8086 e Intel 8088 en el IBM PC y el IBM PC XT en la década de 1980. Entre sus 62 pines se encontraban versiones desmultiplexadas y con búfer eléctrico de las 8 líneas de datos y 20 líneas de dirección del procesador 8088, junto con líneas de alimentación, relojes, señales de lectura/escritura, líneas de interrupción, etc. Las líneas de alimentación incluían −5 V y ±12 V para admitir directamente circuitos pMOS y nMOS de modo de mejora , como memorias RAM dinámicas, entre otros. La arquitectura del bus XT utiliza un único PIC Intel 8259 , que proporciona ocho líneas de interrupción vectorizadas y priorizadas. Dispone de cuatro canales DMA proporcionados originalmente por el Intel 8237. Tres de los canales DMA se conectan a las ranuras de expansión del bus XT; de estos, dos ya están normalmente asignados a funciones de la máquina (unidad de disquete y controlador de disco duro).
El bus PC/AT , una versión de 16 bits (o 80286) del bus PC/XT, se introdujo con el IBM PC/AT . IBM denominó oficialmente a este bus Canal de E/S . [ 6 ] Extiende el bus XT añadiendo un segundo conector de borde más corto en línea con el conector del bus XT de ocho bits, que permanece sin cambios, manteniendo la compatibilidad con la mayoría de las tarjetas de 8 bits. El segundo conector añade cuatro líneas de dirección adicionales para un total de 24, y 8 líneas de datos adicionales para un total de 16. También añade nuevas líneas de interrupción conectadas a un segundo PIC 8259 (conectado a una de las líneas del primero) y 4 canales DMA de 16 bits, así como líneas de control para seleccionar transferencias de 8 o 16 bits.
La ranura del bus AT de 16 bits utilizaba originalmente dos conectores de borde estándar en los primeros ordenadores IBM PC/AT. Sin embargo, con la popularidad de la arquitectura AT y el bus ISA de 16 bits, los fabricantes introdujeron conectores especializados de 98 pines que integraban ambos conectores en una sola unidad. Estos se encuentran en casi todos los PC de clase AT fabricados después de mediados de la década de 1980. El conector de la ranura ISA suele ser negro (lo que lo distingue de los conectores EISA marrones y los conectores PCI blancos).
Número de dispositivos
Los dispositivos de la placa base tienen IRQ dedicadas (no presentes en las ranuras). Los dispositivos de 16 bits pueden usar IRQ de bus PC o de bus PC/AT. Por lo tanto, es posible conectar hasta 6 dispositivos que usen una IRQ de 8 bits cada uno y hasta 5 dispositivos que usen una IRQ de 16 bits cada uno. Asimismo, hasta 4 dispositivos pueden usar un canal DMA de 8 bits cada uno, mientras que hasta 3 dispositivos pueden usar un canal DMA de 16 bits cada uno.
Velocidades variables de los autobuses
Originalmente, el reloj del bus estaba sincronizado con el reloj de la CPU, lo que resultaba en frecuencias de reloj de bus variables entre los diferentes clones de IBM en el mercado (a veces tan altas como 16 o 20 MHz), lo que provocaba problemas de sincronización de software o eléctricos para ciertas tarjetas ISA a velocidades de bus para las que no estaban diseñadas. Las placas base o chipsets integrados posteriores usaban un generador de reloj independiente o un divisor de reloj que fijaba la frecuencia del bus ISA a 4, 6 u 8 MHz [ 7 ] o permitía al usuario ajustar la frecuencia a través de la configuración del BIOS . Cuando se usaban a una frecuencia de bus más alta, algunas tarjetas ISA (ciertas tarjetas de video compatibles con Hercules , por ejemplo) podían mostrar mejoras de rendimiento significativas.
Incompatibilidades de 8/16 bits
La decodificación de direcciones de memoria para la selección del modo de transferencia de 8 o 16 bits estaba limitada a secciones de 128 KB, lo que generaba problemas al combinar tarjetas de 8 y 16 bits, ya que no podían coexistir en la misma área de 128 KB. Esto se debe a que la línea MEMCS16 debe configurarse únicamente en función del valor de LA17-23.
Uso pasado y actual
ISA todavía se utiliza hoy en día para fines industriales especializados. En 2008, IEI Technologies lanzó una placa base moderna para procesadores Intel Core 2 Duo que, además de otras características especiales de E/S, está equipada con dos ranuras ISA. Se comercializó para usuarios industriales y militares que habían invertido en costosos adaptadores de bus ISA especializados, que no estaban disponibles en versiones para bus PCI . [ 8 ]
De manera similar, ADEK Industrial Computers lanzó una placa base moderna a principios de 2013 para procesadores Intel Core i3/i5/i7, que contiene una ranura ISA (sin DMA). [ 9 ] Asimismo, MSI lanzó una placa base moderna con una ranura ISA en 2020, para usar con procesadores Intel Skylake y Kaby Lake ; [ 10 ] según sus especificaciones oficiales, se puede acceder a ella dentro de la instalación de Windows 7 de 32 bits . [ 11 ] DFI también lanzó una placa base con dos ranuras ISA, para usar con procesadores Intel Coffee Lake ; [ 12 ] en este ejemplo, debido a la naturaleza histórica de ISA, solo se puede acceder a ellas dentro de máquinas virtuales basadas en KVM . [ 13 ]
El bus PC/104 , utilizado en aplicaciones industriales y embebidas, es una derivación del bus ISA, que utiliza las mismas líneas de señal con conectores diferentes. El bus LPC ha reemplazado al bus ISA como conexión a los dispositivos de E/S heredados en las placas base actuales; si bien físicamente es bastante diferente, LPC se comporta como ISA para el software, por lo que es probable que las peculiaridades de ISA, como el límite de DMA de 16 MiB (que corresponde al espacio de direcciones completo de la CPU Intel 80286 utilizada en el IBM AT original), se mantengan durante un tiempo.
ATA
Como se explica en la sección de Historia , ISA fue la base para el desarrollo de la interfaz ATA , utilizada para discos duros ATA (también conocidos como IDE). Físicamente, ATA es esencialmente un subconjunto simple de ISA, con 16 bits de datos, soporte para exactamente una IRQ y un canal DMA, y 3 bits de dirección. A este subconjunto de ISA, ATA agrega dos líneas de selección de dirección IDE ("selección de chip") (es decir, decodificaciones de dirección, efectivamente equivalentes a bits de dirección) y algunas líneas de señal únicas específicas para discos duros ATA/IDE (como la línea de selección de cable/sincronización del husillo). Además del canal de interfaz física, ATA va más allá del alcance de ISA al especificar también un conjunto de registros de dispositivo físico que deben implementarse en cada unidad ATA (IDE) y un conjunto completo de protocolos y comandos de dispositivo para controlar unidades de disco fijo utilizando estos registros. Se accede a los registros del dispositivo ATA mediante los bits de dirección y las señales de selección de dirección en el canal de interfaz física ATA, y todas las operaciones de los discos duros ATA se realizan mediante los protocolos especificados por ATA a través del conjunto de comandos ATA. Las primeras versiones del estándar ATA presentaban unos pocos protocolos sencillos y un conjunto de comandos básico comparable a los conjuntos de comandos de los controladores MFM y RLL (que precedieron a los controladores ATA), pero los estándares ATA más recientes tienen protocolos y conjuntos de instrucciones mucho más complejos que incluyen comandos y protocolos opcionales que proporcionan funciones avanzadas de uso opcional, como áreas de almacenamiento del sistema ocultas de gran tamaño, bloqueo de seguridad mediante contraseña y traducción de geometría programable.
A mediados de la década de 1990, el controlador de host ATA (generalmente integrado en el chipset) se trasladó al formato PCI . [ 14 ] Otra diferencia entre ISA y ATA es que, mientras que el bus ISA permaneció bloqueado a una única velocidad de reloj estándar (para compatibilidad con hardware anterior), la interfaz ATA ofrecía muchos modos de velocidad diferentes, podía seleccionar entre ellos para coincidir con la velocidad máxima admitida por las unidades conectadas y siguió agregando velocidades más rápidas con versiones posteriores del estándar ATA (hasta 133 MB/s para ATA-6, la más reciente). En la mayoría de los casos, ATA funcionaba mucho más rápido que ISA, siempre que estuviera conectado directamente a un bus local (por ejemplo, interfaces IDE integradas en el puente sur) más rápido que el bus ISA.
XT-IDE
Antes de la interfaz ATA/IDE de 16 bits , existía una interfaz XT-IDE de 8 bits (también conocida como XTA) para discos duros. No era tan popular como lo es ahora ATA, y el hardware XT-IDE es bastante difícil de encontrar. Algunos adaptadores XT-IDE estaban disponibles como tarjetas ISA de 8 bits, y también había zócalos XTA en las placas base de los clones XT posteriores de Amstrad , así como en una línea efímera de unidades Philips . La distribución de pines de XTA era muy similar a la de ATA, pero solo se utilizaban ocho líneas de datos y dos líneas de dirección, y los registros del dispositivo físico tenían significados completamente diferentes. Algunos discos duros (como el Seagate ST351A/X) podían admitir ambos tipos de interfaz, seleccionándose mediante un jumper.
Muchas placas base AT posteriores (y sus sucesoras) no tenían una interfaz de disco duro integrada, sino que dependían de una interfaz de disco duro independiente conectada a una ranura ISA/EISA/VLB. Incluso hubo algunas unidades basadas en el 80486 que se comercializaron con interfaces y unidades MFM/RLL en lugar de la cada vez más común AT-IDE.
Commodore fabricó la unidad de expansión de memoria y disco duro periférico A590, basada en XT-IDE, para sus ordenadores Amiga 500 y 500+, que también admitían una unidad SCSI . Los modelos posteriores, como el A600 , el A1200 y la serie Amiga 4000 , utilizan unidades AT-IDE.
PCMCIA
La especificación PCMCIA puede considerarse un superconjunto de ATA. El estándar para interfaces de disco duro PCMCIA, que incluye unidades flash PCMCIA, permite la configuración mutua del puerto y la unidad en modo ATA. Como extensión de facto, la mayoría de las unidades flash PCMCIA también permiten un modo ATA simple que se activa al poner un solo pin a nivel bajo, de modo que no se requiere hardware ni firmware PCMCIA para usarlas como una unidad ATA conectada a un puerto ATA. Por lo tanto, los adaptadores de unidad flash PCMCIA a ATA son simples y económicos, pero no se garantiza su compatibilidad con todas las unidades flash PCMCIA estándar. Además, dichos adaptadores no pueden usarse como puertos PCMCIA genéricos, ya que la interfaz PCMCIA es mucho más compleja que ATA.
Emulación mediante chips integrados
Aunque la mayoría de los ordenadores modernos no disponen de buses ISA físicos, casi todos los PC ( IA-32 y x86-64 ) tienen buses ISA asignados en el espacio de direcciones físicas. Algunos puentes sur y algunas CPU proporcionan servicios como la monitorización de la temperatura y la lectura de voltaje a través de los buses ISA como dispositivos ISA.
Normalización
IEEE inició la estandarización del bus ISA en 1985, denominada especificación P996. Sin embargo, a pesar de la publicación de libros sobre la especificación P996, esta nunca pasó oficialmente de la fase de borrador. [ 15 ]
Tarjetas ISA modernas
Todavía existe una base de usuarios con ordenadores antiguos, por lo que aún se fabrican algunas tarjetas ISA, por ejemplo, con puertos USB [ 16 ] o ordenadores de placa única completos basados en procesadores modernos, USB 3.0 y SATA . [ 17 ]
Véase también
- PC/104 - Variante integrada de ISA
- Número bajo de pines (LPC)
- Arquitectura estándar extendida de la industria (EISA)
- Arquitectura de microcanales (MCA)
- Autobús local VESA (VLB)
- Interconexión de componentes periféricos (PCI)
- Puerto de gráficos acelerados (AGP)
- PCI-X
- PCI Express (PCI-E o PCIe)
- Lista de interfaces de bus de computadora
- Amiga Zorro II
- NuBus
- Tejido cambiado
- Lista de anchos de banda de los dispositivos
- PCI compacto
- Tarjeta de PC
- Bus serie universal (USB)
- Puerto heredado
- Plano posterior
Referencias
- ↑ Kyle Chapman. "El maravilloso mundo de los autobuses" . Consultado el 30 de junio de 2021 .
- ↑ Reilly, Edwin (2003). Hitos en informática y tecnología de la información . Westport, Conn.: Greenwood Press. pp. 37. ISBN 1573565210OCLC 51258496
- ↑ John Titus (15 de septiembre de 2001). "De dónde surgió el IBM PC" . edn.com . Consultado el 13 de octubre de 2020 .
- ↑ LaPlante, Alice; Furger, Roberta (23 de enero de 1989). "Compaq compite por convertirse en el IBM de los 90" . InfoWorld . págs. 1, 8. Consultado el 17 de marzo de 2016 .
- ↑ Lewis, Peter H. (1988-04-24). "Introducción a los primeros clones de PS/2" . The New York Times . Archivado del original el 6 de enero de 2015. Recuperado el 6 de enero de 2015 .
- ↑ "¿Qué es ISA (Industry Standard Architecture)? | Definición de TechTarget" . Buscar en Windows Server . Consultado el 15 de septiembre de 2025 .
- ↑ Brooks, Charles J. (2003). A+: Guía de capacitación . Que. ISBN 978-0-7897-3044-2.
- ↑ IEI Technology Corp: Manual de usuario IMBA-9654ISA , Rev. 1.00, mayo de 2008
- ↑ Computadoras industriales ADEK: Especificaciones del producto MS-98A9
- ↑ Zhiye Liu (14 de marzo de 2020). "La placa base LGA1151 de MSI nos transporta a 1992 con ranuras PCI" . Tom's Hardware . Consultado el 25 de julio de 2024 .
- ↑ "MS-98L9, v2.x, Manual" (PDF) . Consultado el 2 de mayo de 2025 .
- ↑ "CS620-H310|Intel®|Placas base industriales|DFI" . DFI . Consultado el 2 de mayo de 2025 .
- ↑ "Guía del usuario del dispositivo ISA DFI CS620, v. 1.1" (PDF) . DFI . Consultado el 2 de mayo de 2025 .
- ↑ "Controlador IDE PCI - Wiki de OSDev" . wiki.osdev.org . Consultado el 27 de julio de 2024 .
- ↑ Graves, Michael W. (2005). Guía A+ para el mantenimiento y la reparación de hardware de PC, Volumen 1. Thomson, Delmar Learning. pág. 191. ISBN 1401852300.
- ↑ "Adaptador USB ISA de baja tecnología - lo-tech.co.uk" . www.lo-tech.co.uk . Archivado del original el 9 de abril de 2018. Consultado el 3 de mayo de 2018 .
- ↑ "PCA-6763" . www.advantech.com . Archivado del original el 24 de octubre de 2017. Consultado el 3 de mayo de 2018 .
Lecturas adicionales
- Especificación y notas de aplicación del bus ISA de Intel - Rev. 2.01 ; Intel; 73 páginas; 1989.
Enlaces externos
- "Arquitectura estándar industrial (ISA) del bus de conectores" . Libro de hardware.
- Microsoft (2 de junio de 1999). "Eliminación de la arquitectura ISA en plataformas basadas en Windows" . Microsoft. Archivado del original (Microsoft Word) el 11 de marzo de 2012. Consultado el 14 de julio de 2007 .
- Introducciones relacionadas con la informática en 1981
- buses informáticos
- Ranura de expansión de la placa base
- Ordenadores personales IBM X86
- IBM PC compatibles
- Hardware heredado
- Estándares de hardware informático