
Un bus de sistema es un único bus informático que conecta los componentes principales de un sistema informático, combinando las funciones de un bus de datos para transportar información, un bus de direcciones para determinar dónde debe enviarse o leerse, y un bus de control para determinar su funcionamiento. Esta técnica se desarrolló para reducir costes y mejorar la modularidad, y aunque fue popular en las décadas de 1970 y 1980, los ordenadores más modernos utilizan diversos buses independientes adaptados a necesidades más específicas. [ 1 ]
El bus de nivel de sistema (a diferencia de los buses de ruta de datos internos de una CPU ) conecta la CPU a la memoria y a los dispositivos de E/S. [ 2 ] Normalmente, un bus de nivel de sistema está diseñado para usarse como plano posterior . [ 3 ]
Escenario de fondo
Muchas de las computadoras se basaron en el Primer Borrador de un Informe sobre el Informe EDVAC publicado en 1945. En lo que se conoció como la arquitectura Von Neumann , una unidad de control central y una unidad aritmético-lógica (ALU, que él denominó la parte aritmética central) se combinaron con la memoria de la computadora y las funciones de entrada y salida para formar una computadora de programa almacenado . [ 4 ] El Informe presentó una organización general y un modelo teórico de la computadora, pero no la implementación de dicho modelo. [ 5 ] Pronto, los diseños integraron la unidad de control y la ALU en lo que se conoció como la unidad central de procesamiento (CPU).
En las décadas de 1950 y 1960, las computadoras se construían generalmente de forma improvisada. Por ejemplo, la CPU, la memoria y las unidades de entrada/salida eran cada una uno o más gabinetes conectados por cables. Los ingenieros utilizaban las técnicas comunes de haces de cables estandarizados y extendieron el concepto al emplear placas base para alojar las placas de circuitos impresos en estas primeras máquinas. El término "bus" ya se utilizaba para las " barras conductoras " que transportaban energía eléctrica a las distintas partes de las máquinas eléctricas, incluidas las primeras calculadoras mecánicas. [ 6 ] La llegada de los circuitos integrados redujo enormemente el tamaño de cada unidad de computadora, y los buses se estandarizaron. [ 7 ] Los módulos estándar podían interconectarse de forma más uniforme y eran más fáciles de desarrollar y mantener.
Descripción
Para proporcionar aún más modularidad con un coste reducido, los buses de memoria y E/S (y los buses de control y alimentación necesarios ) a veces se combinaban en un único bus de sistema unificado. [ 8 ] La modularidad y el coste se volvieron importantes a medida que los ordenadores se hicieron lo suficientemente pequeños como para caber en un único gabinete (y los clientes esperaban reducciones de precio similares). Digital Equipment Corporation (DEC) redujo aún más el coste de los miniordenadores de producción en masa y mapeó la E/S en el bus de memoria, de modo que los dispositivos parecían ubicaciones de memoria. Esto se implementó en el Unibus del PDP-11 alrededor de 1969, eliminando la necesidad de un bus de E/S separado. [ 9 ] Incluso ordenadores como el PDP-8 sin E/S mapeada en memoria pronto se implementaron con un bus de sistema, lo que permitía conectar módulos en cualquier ranura. [ 10 ] Algunos autores denominaron a esto un nuevo "modelo" simplificado de arquitectura de ordenadores. [ 11 ]
Muchos de los primeros microordenadores (con una CPU generalmente en un solo circuito integrado ) se construyeron con un único bus de sistema, comenzando con el bus S-100 en el sistema informático Altair 8800 alrededor de 1975. [ 12 ] El IBM PC utilizó el bus Industry Standard Architecture (ISA) como su bus de sistema en 1981. Los backplanes pasivos de los primeros modelos fueron reemplazados por el estándar de colocar la CPU y la RAM en una placa base , con solo tarjetas secundarias o tarjetas de expansión opcionales en ranuras del bus del sistema.

El Multibus se convirtió en un estándar del Instituto de Ingenieros Eléctricos y Electrónicos como estándar IEEE 796 en 1983. [ 13 ] Sun Microsystems desarrolló el SBus en 1989 para admitir tarjetas de expansión más pequeñas. [ 14 ] La forma más sencilla de implementar el multiprocesamiento simétrico era conectar más de una CPU al bus del sistema compartido, que se utilizó durante la década de 1980. Sin embargo, el bus compartido pronto se convirtió en el cuello de botella y se exploraron técnicas de conexión más sofisticadas. [ 15 ]
Incluso en sistemas muy simples, el bus de datos es controlado en distintos momentos por la memoria de programa, la RAM y los dispositivos de E/S. Para evitar la contención del bus de datos, en cada instante solo un dispositivo lo controla. En sistemas muy simples, solo el bus de datos debe ser bidireccional. En estos sistemas, el registro de direcciones de memoria siempre controla el bus de direcciones, la unidad de control controla el bus de control y un decodificador de direcciones selecciona qué dispositivo específico puede controlar el bus de datos durante este ciclo. En sistemas muy simples, cada ciclo de instrucción comienza con un ciclo de lectura de memoria, donde la memoria de programa envía la instrucción al bus de datos mientras el registro de instrucciones la almacena. Algunas instrucciones continúan con un ciclo de escritura de memoria, donde el registro de datos de memoria envía datos al bus de datos, a la RAM o al dispositivo de E/S seleccionado. Otras instrucciones continúan con otro ciclo de lectura de memoria, donde la RAM, la memoria de programa o el dispositivo de E/S seleccionado envían datos al bus de datos mientras el registro de datos de memoria los almacena.
Los sistemas más complejos cuentan con un bus multimaster : no solo tienen muchos dispositivos que controlan el bus de datos, sino también muchos maestros de bus que controlan el bus de direcciones. En los sistemas de inspección de bus, tanto el bus de direcciones como el de datos deben ser bidireccionales, a menudo implementados como un bus de tres estados . Para evitar la contención en el bus de direcciones, un árbitro de bus selecciona qué maestro de bus específico tiene permiso para controlar el bus de direcciones durante este ciclo.
Autobús independiente doble
Intel ha utilizado el término Dual Independent Bus (DIB) con dos propósitos diferentes. El primero surgió cuando Intel cambió de un único bus local al DIB, utilizando el bus frontal externo para la memoria principal del sistema y los dispositivos de E/S, y el bus posterior interno para la caché L2 de la CPU . Esto se introdujo en el Pentium Pro en 1995. [ 16 ] [ 17 ] [ 18 ]
En 2005 y 2006, Intel presentó los chipsets 8500 y 5000, donde DIB se refería a los dos buses frontales (FSB ) de un chipset, lo que duplica el ancho de banda del sistema en comparación con tener un solo FSB compartido por todas las CPU. Sin embargo, la información necesaria para garantizar la coherencia de la caché de los datos compartidos ubicados en diferentes cachés debe enviarse en difusión (snooping) para verificar el estado de la caché de las CPU del otro FSB, lo que reduce el ancho de banda disponible. Para reducir el tráfico de coherencia, se incluyó un filtro snoop en los chipsets de gama alta, con el fin de tener la información del estado de la caché disponible en el chipset. En 2007, Intel extendió la idea de múltiples buses en el chipset 7300 con cuatro FSB independientes, denominándolo interconexiones dedicadas de alta velocidad (DHSI). [ 19 ]
El enfoque del bus del sistema está obsoleto en los ordenadores personales y servidores modernos, que en su lugar utilizan tecnologías de interconexión de mayor rendimiento como HyperTransport e Intel QuickPath Interconnect , mientras que la arquitectura del bus del sistema se sigue utilizando en microprocesadores integrados más sencillos. El bus del sistema puede incluso estar dentro de un único circuito integrado, dando lugar a un sistema en un chip . Ejemplos de bus en chip incluyen AMBA , CoreConnect , Wishbone y versiones modificadas de PCI o PCIe . [ 20 ]
Ejemplos
Interfaz multimedia directa de Intel
La interfaz de medios directos (DMVI) es un ejemplo de bus de sistema (además de los carriles PCIE de acceso directo ) implementado por Intel y conocido desde al menos 2004. Se utiliza principalmente para acceder a dispositivos de E/S mapeados en memoria y para comunicar la CPU al chipset .
Véase también
Referencias
- ↑ "Autobuses - Estructura de computadoras - Repaso de informática avanzada" . BBC Bitesize . Consultado el 10 de agosto de 2025 .
- ↑ Edward Bosworth. "Capítulo 10 – Descripción general de los autobuses" .
- ↑ Hui Wu. "Buses de computadora y entrada/salida paralela" . 2006.
- ↑ John von Neumann (30 de junio de 1945). "Primer borrador de un informe sobre el EDVAC" (PDF) . Archivado del original (PDF) el 14 de marzo de 2013. Recuperado el 27 de mayo de 2011 .Introducción y edición a cargo de Michael D. Godfrey, Universidad de Stanford, noviembre de 1992.
- ↑ Michael D. Godfrey; DF Hendry (1993). "The Computer as von Neumann Planned It" (PDF) . IEEE Annals of the History of Computing . 15 (1): 11– 21. doi : 10.1109/85.194088 . S2CID 569933. Archivado del original (PDF) el 25 de agosto de 2011.
- ↑ Patente estadounidense 3,470,421 "Barra colectora continua para cableado de máquinas de paneles traseros de placas de conexión" Donald L. Shore et al., presentada el 30 de agosto de 1967, emitida el 30 de septiembre de 1969.
- ↑ Patente estadounidense 3,462,742 "Sistema informático adaptado para ser construido con grandes conjuntos de circuitos integrados" Henry S. Miller et al., presentada el 21 de diciembre de 1966, emitida el 19 de agosto de 1969.
- ↑ Linda Null; Julia Lobur (2010). Fundamentos de organización y arquitectura de computadoras (3.ª ed.). Jones & Bartlett Learning. pp. 36, 199–203 . ISBN 978-1-4496-0006-8.
- ↑ C. Gordon Bell; R. Cady; H. McFarland; B. Delagi; J. O'Laughlin; R. Noonan; W. Wulf (1970). "Una nueva arquitectura para minicomputadoras: la DEC PDP-11" (PDF) . Spring Joint Computer Conference : 657–675 .
- ↑ Manual de computadoras pequeñas (PDF) . Digital Equipment Corporation. 1973. págs. 2–9 .
- ↑ Miles J. Murdocca; Vincent P. Heuring (2007). Arquitectura y organización de computadoras: un enfoque integrado . John Wiley & Sons. pág. 11. ISBN 978-0-471-73388-1.
- ↑ Herbert R. Johnson. "Orígenes de las computadoras S-100" .
- ↑ "796-1983 — Estándar IEEE para el bus del sistema de microcomputadoras" . Instituto de Ingenieros Eléctricos y Electrónicos . 1983. Consultado el 25 de mayo de 2011 .
- ↑ Frank, EH (1990). "El SBus: el bus de sistema de alto rendimiento de Sun para estaciones de trabajo RISC". Resumen de ponencias de Compcon Spring '90. Trigésimo quinta Conferencia Internacional de la IEEE Computer Society sobre Apalancamiento Intelectual . págs. 189–194 . doi : 10.1109/CMPCON.1990.63672 . ISBN 0-8186-2028-5. S2CID 25815415 .
- ↑ Donald Charles Winsor (1989). Organización del bus y la memoria caché para multiprocesadores (PDF) . Departamento de Ingeniería Eléctrica de la Universidad de Michigan. Archivado del original (PDF) el 28 de enero de 2012. Consultado el 29 de mayo de 2011 .tesis doctoral.
- ↑ El CEO de Intel revela la nueva arquitectura de bus que se implementará en el próximo microprocesador Pentium® II.
- ↑ Todd Langley y Rob Kowalczyk (enero de 2009). "Introducción a la arquitectura Intel: lo básico" (PDF) . Libro blanco . Intel Corporation. Archivado del original (PDF) el 12 de julio de 2009. Consultado el 25 de mayo de 2011 .
- ↑ "Puerto de gráficos acelerados". Next Generation . N.° 37. Imagine Media . Enero de 1998. págs. 94–96 .
- ↑ Introducción a la interconexión Intel® QuickPath , figuras 4 y 5.
- ↑ Rudolf Usselmann (9 de enero de 2001). "Revisión del bus SoC de OpenCores" (PDF) . Consultado el 30 de mayo de 2011 .
- buses informáticos