De Wikipedia, la enciclopedia libre
  (Redirigido desde el bus de datos )
Saltar a navegación Saltar a búsqueda

Cuatro ranuras para tarjetas de bus PCI Express (de arriba a abajo: × 4, × 16, × 1 y × 16), en comparación con una ranura para tarjeta de bus PCI convencional de 32 bits (en la parte inferior)

En arquitectura de computadora , un bus [1] (forma abreviada del latín ómnibus , e históricamente también llamado autopista de datos [2] ) es un sistema de comunicación que transfiere datos entre componentes dentro de una computadora , o entre computadoras. Esta expresión cubre todos los componentes de hardware relacionados (cable, fibra óptica , etc.) y software , incluidos los protocolos de comunicación . [3]

Los primeros buses de computadora eran cables eléctricos paralelos con múltiples conexiones de hardware, pero el término ahora se usa para cualquier disposición física que proporcione la misma función lógica que un bus eléctrico paralelo . Los buses de computadora modernos pueden usar conexiones en serie de bits y paralelas , y pueden cablearse en una topología multipunto (paralelo eléctrico) o en cadena , o conectarse mediante concentradores conmutados, como en el caso de USB .

Antecedentes y nomenclatura [ editar ]

Los sistemas informáticos generalmente constan de tres partes principales:

  • La unidad central de procesamiento (CPU) que procesa los datos,
  • La memoria que contiene los programas y los datos que se van a procesar, y
  • Dispositivos de E / S ( entrada / salida ) como periféricos que se comunican con el mundo exterior.

Una de las primeras computadoras podría contener una CPU de tubos de vacío conectada a mano , un tambor magnético para la memoria principal y una cinta perforadora e impresora para leer y escribir datos, respectivamente. Un sistema moderno puede tener una CPU de múltiples núcleos , DDR4 SDRAM para memoria, una unidad de estado sólido para almacenamiento secundario , una tarjeta gráfica y LCD como sistema de visualización, un mouse y teclado para interacción y una conexión Wi-Fi para redes. En ambos ejemplos, los buses de computadora de una forma u otra mueven datos entre todos estos dispositivos.

En la mayoría de las arquitecturas informáticas tradicionales , la CPU y la memoria principal tienden a estar estrechamente acopladas. Un microprocesador es convencionalmente un chip único que tiene varias conexiones eléctricas en sus pines que se pueden usar para seleccionar una "dirección" en la memoria principal y otro conjunto de pines para leer y escribir los datos almacenados en esa ubicación. En la mayoría de los casos, la CPU y la memoria comparten características de señalización y operan en sincronía . El bus que conecta la CPU y la memoria es una de las características definitorias del sistema y, a menudo, se lo denomina simplemente bus del sistema .

Es posible permitir que los periféricos se comuniquen con la memoria de la misma manera, conectando adaptadores en forma de tarjetas de expansión directamente al bus del sistema. Esto se logra comúnmente a través de algún tipo de conector eléctrico estandarizado, varios de los cuales forman el bus de expansión o bus local . Sin embargo, como las diferencias de rendimiento entre la CPU y los periféricos varían ampliamente, generalmente se necesita alguna solución para garantizar que los periféricos no reduzcan el rendimiento general del sistema. Muchas CPU cuentan con un segundo conjunto de pines similar a los que se utilizan para comunicarse con la memoria, pero pueden funcionar a velocidades muy diferentes y utilizando diferentes protocolos. Otros usan controladores inteligentes para colocar los datos directamente en la memoria, un concepto conocido comoacceso directo a la memoria . La mayoría de los sistemas modernos combinan ambas soluciones, cuando corresponde.

A medida que crecía la cantidad de periféricos potenciales, el uso de una tarjeta de expansión para cada periférico se volvió cada vez más insostenible. Esto ha llevado a la introducción de sistemas de bus diseñados específicamente para admitir múltiples periféricos. Ejemplos comunes son los puertos SATA en las computadoras modernas, que permiten conectar varios discos duros sin necesidad de una tarjeta. Sin embargo, estos sistemas de alto rendimiento generalmente son demasiado costosos para implementar en dispositivos de gama baja, como un mouse. Esto ha llevado al desarrollo paralelo de una serie de sistemas de bus de bajo rendimiento para estas soluciones, siendo el ejemplo más común el bus serie universal (USB) estandarizado . Todos estos ejemplos pueden denominarse buses periféricos , aunque esta terminología no es universal.

En los sistemas modernos, la diferencia de rendimiento entre la CPU y la memoria principal ha crecido tanto que se integran cantidades cada vez mayores de memoria de alta velocidad directamente en la CPU, lo que se conoce como caché . En tales sistemas, las CPU se comunican mediante buses de alto rendimiento que operan a velocidades mucho mayores que la memoria y se comunican con la memoria usando protocolos similares a los que se usaban únicamente para periféricos en el pasado. Estos buses del sistema también se utilizan para comunicarse con la mayoría (o todos) los demás periféricos, a través de adaptadores, que a su vez se comunican con otros periféricos y controladores. Estos sistemas son arquitectónicamente más similares a los multicomputadoras., comunicándose a través de un bus en lugar de una red. En estos casos, los buses de expansión están completamente separados y ya no comparten ninguna arquitectura con su CPU host (y de hecho pueden admitir muchas CPU diferentes, como es el caso de PCI ). Lo que antes había sido un bus del sistema ahora se conoce como bus frontal .

Dados estos cambios, los términos clásicos "sistema", "expansión" y "periférico" ya no tienen las mismas connotaciones. Otros sistemas de categorización comunes se basan en la función principal del bus, conectando dispositivos interna o externamente, PCI vs. SCSI, por ejemplo. Sin embargo, muchos sistemas de bus modernos comunes se pueden utilizar para ambos; SATA y la eSATA asociada son un ejemplo de un sistema que anteriormente se describiría como interno, mientras que ciertas aplicaciones automotrices usan el IEEE 1394 principalmente externo de una manera más similar a un bus de sistema. Otros ejemplos, como InfiniBand e I²C, fueron diseñados desde el principio para ser utilizados tanto interna como externamente.

Buses internos [ editar ]

El bus interno, también conocido como bus interno de datos, bus de memoria , bus de sistema o bus frontal , conecta todos los componentes internos de un ordenador, tales como la CPU y la memoria, a la placa base. Los buses de datos internos también se conocen como buses locales, porque están diseñados para conectarse a dispositivos locales. Este bus suele ser bastante rápido y es independiente del resto de las operaciones de la computadora.

Buses externos [ editar ]

El bus externo, o bus de expansión , está formado por las vías electrónicas que conectan los diferentes dispositivos externos, como la impresora, etc., a la computadora.

Bus de direcciones [ editar ]

Un bus de direcciones es un bus que se utiliza para especificar una dirección física . Cuando un procesador o dispositivo habilitado para DMA necesita leer o escribir en una ubicación de memoria, especifica esa ubicación de memoria en el bus de direcciones (el valor a leer o escribir se envía en el bus de datos ). El ancho del bus de direcciones determina la cantidad de memoria que un sistema puede abordar. Por ejemplo, un sistema con un bus de direcciones de 32 bits puede direccionar 2 32 (4.294.967.296) ubicaciones de memoria. Si cada ubicación de memoria contiene un byte, el espacio de memoria direccionable es de 4 GiB.

Multiplexación de direcciones [ editar ]

Los primeros procesadores usaban un cable para cada bit del ancho de la dirección. Por ejemplo, un bus de direcciones de 16 bits tenía 16 cables físicos que formaban el bus. A medida que los autobuses se hicieron más anchos y largos, este enfoque se volvió caro en términos de la cantidad de pines de chip y trazas de placa. A partir de la DRAM Mostek 4096 , la multiplexación de direcciones implementada con multiplexores se volvió común. En un esquema de direcciones multiplexadas, la dirección se envía en dos partes iguales en ciclos de bus alternativos. Esto reduce a la mitad el número de señales de bus de direcciones necesarias para conectarse a la memoria. Por ejemplo, se puede implementar un bus de direcciones de 32 bits utilizando 16 líneas y enviando la primera mitad de la dirección de memoria, seguida inmediatamente por la segunda mitad de la dirección de memoria.

Por lo general, 2 pines adicionales en el bus de control, una luz estroboscópica de dirección de fila (RAS) y la luz estroboscópica de dirección de columna (CAS), se utilizan para indicarle a la DRAM si el bus de dirección está enviando actualmente la primera mitad de la dirección de memoria o la segunda mitad.

Implementación [ editar ]

Para acceder a un byte individual, con frecuencia es necesario leer o escribir todo el ancho del bus (una palabra ) a la vez. En estos casos, es posible que ni siquiera se implementen los bits menos significativos del bus de direcciones; en cambio, es responsabilidad del dispositivo de control aislar el byte individual requerido de la palabra completa transmitida. Este es el caso, por ejemplo, del bus local VESA que carece de los dos bits menos significativos, lo que limita este bus a transferencias alineadas de 32 bits.

Históricamente, también hubo algunos ejemplos de computadoras que solo podían abordar palabras: máquinas de palabras .

Detalles de implementación [ editar ]

Los buses pueden ser buses paralelos , que transportan palabras de datos en paralelo en varios cables, o buses seriales , que transportan datos en forma de bits en serie. La adición de conexiones adicionales de potencia y control, controladores diferenciales , y las conexiones de datos en cada dirección por lo general significa que la mayoría de los buses serie tienen más conductores que el mínimo de uno utilizado en 1-Wire y UNI / O . A medida que aumentan las velocidades de datos, los problemas de sesgo de sincronización , consumo de energía, interferencia electromagnética y diafonía entre buses paralelos se vuelven cada vez más difíciles de eludir. Una solución parcial a este problema ha sido el doble bombeoel autobús. A menudo, un bus en serie se puede operar a velocidades de datos generales más altas que un bus en paralelo, a pesar de tener menos conexiones eléctricas, porque un bus en serie no tiene inherentemente desviación de tiempo o diafonía. USB , FireWire y Serial ATA son ejemplos de esto. Las conexiones multipunto no funcionan bien para buses seriales rápidos, por lo que la mayoría de los buses seriales modernos usan diseños de hub o de cadena tipo margarita .

Las conexiones de red como Ethernet generalmente no se consideran buses, aunque la diferencia es más conceptual que práctica. Un atributo generalmente utilizado para caracterizar un bus es que el bus proporciona energía para el hardware conectado. Esto enfatiza los orígenes de las barras colectoras de la arquitectura de barras como suministro de energía conmutada o distribuida. Esto excluye, como buses, esquemas como RS-232 en serie , Centronics en paralelo , interfaces IEEE 1284 y Ethernet, ya que estos dispositivos también necesitaban fuentes de alimentación independientes. Los dispositivos de bus serie universal pueden utilizar la alimentación suministrada por el bus, pero a menudo utilizan una fuente de alimentación independiente. Esta distinción está ejemplificada por unsistema telefónico con un módem conectado , donde la conexión RJ11 y el esquema de señalización modulada asociado no se considera un bus, y es análogo a una conexión Ethernet . Un esquema de conexión de línea telefónica no se considera un autobús con respecto a las señales, pero la Oficina Central utiliza autobuses con interruptores de barras cruzadas para las conexiones entre teléfonos.

Sin embargo, esta distinción‍, que la energía la proporciona el bus‍, no es el caso en muchos sistemas de aviónica , donde las conexiones de datos como ARINC 429 , ARINC 629 , MIL-STD-1553B (STANAG 3838) y EFABus ( STANAG 3910 ) son comúnmente denominados "buses de datos" o, a veces, "buses de datos". Dichos buses de datos de aviónica se caracterizan generalmente por tener varios equipos o elementos / unidades reemplazables en línea (LRI / LRU) conectados a un medio compartido común . Pueden, como con ARINC 429, ser simplex , es decir, tener una sola fuente LRI / LRU o, como con ARINC 629, MIL-STD-1553B y STANAG 3910, ser dúplex, permiten que todos los LRI / LRU conectados actúen, en diferentes momentos ( semidúplex ), como transmisores y receptores de datos. [4]

Multiplexación de bus [ editar ]

El bus del sistema más simple tiene líneas de datos de entrada, líneas de datos de salida y líneas de dirección completamente separadas. Para reducir el costo, la mayoría de las microcomputadoras tienen un bus de datos bidireccional, reutilizando los mismos cables para entrada y salida en diferentes momentos. [5]

Algunos procesadores utilizan un cable dedicado para cada bit del bus de direcciones, bus de datos y bus de control. Por ejemplo, el STEbus de 64 pines se compone de 8 cables físicos dedicados al bus de datos de 8 bits, 20 cables físicos dedicados al bus de direcciones de 20 bits, 21 cables físicos dedicados al bus de control y 15 cables físicos dedicados a varios buses de potencia.

La multiplexación de bus requiere menos cables, lo que reduce los costos en muchos de los primeros microprocesadores y chips DRAM. Ya se ha mencionado un esquema de multiplexación común, la multiplexación de direcciones . Otro esquema de multiplexación reutiliza los pines del bus de direcciones como pines del bus de datos, [5] un enfoque utilizado por PCI convencional y el 8086 . Los diversos "buses seriales" pueden verse como el límite máximo de multiplexación, enviando cada uno de los bits de dirección y cada uno de los bits de datos, uno a la vez, a través de un solo pin (o un solo par diferencial).

Historia [ editar ]

Con el tiempo, varios grupos de personas trabajaron en varios estándares de bus de computadora, incluido el Comité de estándares de arquitectura de bus IEEE (BASC), el grupo de estudio IEEE "Superbus", la iniciativa de microprocesador abierto (OMI), la iniciativa de microsistemas abiertos (OMI) "Gang of Nine" que desarrolló EISA , etc. [ cita requerida ]

Primera generación [ editar ]

Los primeros buses de computadora eran haces de cables que conectaban la memoria y los periféricos de la computadora . Anecdóticamente denominado " troncal de dígitos ", [6] fueron nombrados después de los buses de energía eléctrica, o barras de bus . Casi siempre, había un bus para la memoria y uno o más buses separados para los periféricos. Se accede a ellos mediante instrucciones independientes, con tiempos y protocolos completamente diferentes.

Una de las primeras complicaciones fue el uso de interrupciones . Los primeros programas de ordenador realizan E / S por la espera en un bucle para el periférico esté listo. Esto fue una pérdida de tiempo para los programas que tenían otras tareas que hacer. Además, si el programa intenta realizar esas otras tareas, es posible que el programa tarde demasiado en comprobarlo de nuevo, lo que provocará la pérdida de datos. De este modo, los ingenieros dispusieron que los periféricos interrumpieran la CPU. Las interrupciones debían tener prioridad, porque la CPU solo puede ejecutar código para un periférico a la vez, y algunos dispositivos son más críticos en cuanto al tiempo que otros.

Los sistemas de gama alta introdujeron la idea de controladores de canal , que eran esencialmente pequeñas computadoras dedicadas a manejar la entrada y salida de un bus dado. IBM los introdujo en el IBM 709 en 1958 y se convirtieron en una característica común de sus plataformas. Otros proveedores de alto rendimiento como Control Data Corporation implementaron diseños similares. En general, los controladores de canal harían todo lo posible para ejecutar todas las operaciones del bus internamente, moviendo datos cuando se sabe que la CPU está ocupada en otro lugar si es posible, y solo usando interrupciones cuando sea necesario. Esto redujo considerablemente la carga de la CPU y proporcionó un mejor rendimiento general del sistema.

Bus de sistema único

Para proporcionar modularidad, los buses de E / S y de memoria se pueden combinar en un bus de sistema unificado . [7] En este caso, se puede utilizar un único sistema mecánico y eléctrico para conectar juntos muchos de los componentes del sistema, o en algunos casos, todos.

Más tarde, los programas informáticos comenzaron a compartir memoria común a varias CPU. También se debía priorizar el acceso a este bus de memoria. La forma sencilla de priorizar las interrupciones o el acceso al autobús era con una conexión en cadena . En este caso, las señales fluirán naturalmente a través del bus en orden físico o lógico, eliminando la necesidad de una programación compleja.

Minis y micros [ editar ]

Digital Equipment Corporation (DEC) redujo aún más el costo de las minicomputadoras de producción masiva y asignó periféricos al bus de memoria, de modo que los dispositivos de entrada y salida parecían ser ubicaciones de memoria. Esto se implementó en el Unibus del PDP-11 alrededor de 1969. [8]

Early microcomputer bus systems were essentially a passive backplane connected directly or through buffer amplifiers to the pins of the CPU. Memory and other devices would be added to the bus using the same address and data pins as the CPU itself used, connected in parallel. Communication was controlled by the CPU, which read and wrote data from the devices as if they are blocks of memory, using the same instructions, all timed by a central clock controlling the speed of the CPU. Still, devices interrupted the CPU by signaling on separate CPU pins.

For instance, a disk drive controller would signal the CPU that new data was ready to be read, at which point the CPU would move the data by reading the "memory location" that corresponded to the disk drive. Almost all early microcomputers were built in this fashion, starting with the S-100 bus in the Altair 8800 computer system.

In some instances, most notably in the IBM PC, although similar physical architecture can be employed, instructions to access peripherals (in and out) and memory (mov and others) have not been made uniform at all, and still generate distinct CPU signals, that could be used to implement a separate I/O bus.

These simple bus systems had a serious drawback when used for general-purpose computers. All the equipment on the bus had to talk at the same speed, as it shared a single clock.

Increasing the speed of the CPU becomes harder, because the speed of all the devices must increase as well. When it is not practical or economical to have all devices as fast as the CPU, the CPU must either enter a wait state, or work at a slower clock frequency temporarily,[9] to talk to other devices in the computer. While acceptable in embedded systems, this problem was not tolerated for long in general-purpose, user-expandable computers.

Such bus systems are also difficult to configure when constructed from common off-the-shelf equipment. Typically each added expansion card requires many jumpers in order to set memory addresses, I/O addresses, interrupt priorities, and interrupt numbers.

Second generation[edit]

"Second generation" bus systems like NuBus addressed some of these problems. They typically separated the computer into two "worlds", the CPU and memory on one side, and the various devices on the other. A bus controller accepted data from the CPU side to be moved to the peripherals side, thus shifting the communications protocol burden from the CPU itself. This allowed the CPU and memory side to evolve separately from the device bus, or just "bus". Devices on the bus could talk to each other with no CPU intervention. This led to much better "real world" performance, but also required the cards to be much more complex. These buses also often addressed speed issues by being "bigger" in terms of the size of the data path, moving from 8-bit parallel buses in the first generation, to 16 or 32-bit in the second, as well as adding software setup (now standardised as Plug-n-play) to supplant or replace the jumpers.

However, these newer systems shared one quality with their earlier cousins, in that everyone on the bus had to talk at the same speed. While the CPU was now isolated and could increase speed, CPUs and memory continued to increase in speed much faster than the buses they talked to. The result was that the bus speeds were now very much slower than what a modern system needed, and the machines were left starved for data. A particularly common example of this problem was that video cards quickly outran even the newer bus systems like PCI, and computers began to include AGP just to drive the video card. By 2004 AGP was outgrown again by high-end video cards and other peripherals and has been replaced by the new PCI Express bus.

An increasing number of external devices started employing their own bus systems as well. When disk drives were first introduced, they would be added to the machine with a card plugged into the bus, which is why computers have so many slots on the bus. But through the 1980s and 1990s, new systems like SCSI and IDE were introduced to serve this need, leaving most slots in modern systems empty. Today there are likely to be about five different buses in the typical machine, supporting various devices.[citation needed]

Third generation[edit]

"Third generation" buses have been emerging into the market since about 2001, including HyperTransport and InfiniBand. They also tend to be very flexible in terms of their physical connections, allowing them to be used both as internal buses, as well as connecting different machines together. This can lead to complex problems when trying to service different requests, so much of the work on these systems concerns software design, as opposed to the hardware itself. In general, these third generation buses tend to look more like a network than the original concept of a bus, with a higher protocol overhead needed than early systems, while also allowing multiple devices to use the bus at once.

Buses such as Wishbone have been developed by the open source hardware movement in an attempt to further remove legal and patent constraints from computer design.

Fourth generation[edit]

The Compute Express Link (CXL) is an open standard interconnect for high-speed CPU-to-device and CPU-to-memory, designed to accelerate next-generation data center performance.[10][citation needed]

Examples of internal computer buses[edit]

Parallel[edit]

  • ASUS Media Bus proprietary, used on some ASUS Socket 7 motherboards
  • Computer Automated Measurement and Control (CAMAC) for instrumentation systems
  • Extended ISA or EISA
  • Industry Standard Architecture or ISA
  • Low Pin Count or LPC
  • MBus
  • MicroChannel or MCA
  • Multibus for industrial systems
  • NuBus or IEEE 1196
  • OPTi local bus used on early Intel 80486 motherboards.[11]
  • Conventional PCI
  • Parallel ATA (also known as Advanced Technology Attachment, ATA, PATA, IDE, EIDE, ATAPI, etc.), Hard disk drive, optical disk drive, tape drive peripheral attachment bus
  • S-100 bus or IEEE 696, used in the Altair 8800 and similar microcomputers
  • SBus or IEEE 1496
  • SS-50 Bus
  • Runway bus, a proprietary front side CPU bus developed by Hewlett-Packard for use by its PA-RISC microprocessor family
  • GSC/HSC, a proprietary peripheral bus developed by Hewlett-Packard for use by its PA-RISC microprocessor family
  • Precision Bus, a proprietary bus developed by Hewlett-Packard for use by its HP3000 computer family
  • STEbus
  • STD Bus (for STD-80 [8-bit] and STD32 [16-/32-bit]), FAQ
  • Unibus, a proprietary bus developed by Digital Equipment Corporation for their PDP-11 and early VAX computers.
  • Q-Bus, a proprietary bus developed by Digital Equipment Corporation for their PDP and later VAX computers.
  • VESA Local Bus or VLB or VL-bus
  • VMEbus, the VERSAmodule Eurocard bus
  • PC/104
  • PC/104-Plus
  • PCI-104
  • PCI/104-Express
  • PCI/104
  • Zorro II and Zorro III, used in Amiga computer systems

Serial[edit]

  • 1-Wire
  • HyperTransport
  • I²C
  • PCI Express or PCIe
  • Serial ATA (SATA), Hard disk drive, solid state drive, optical disc drive, tape drive peripheral attachment bus
  • Serial Peripheral Interface (SPI) bus
  • UNI/O
  • SMBus

Examples of external computer buses[edit]

Parallel[edit]

  • HIPPI High Performance Parallel Interface
  • IEEE-488 (also known as GPIB, General-Purpose Interface Bus, and HPIB, Hewlett-Packard Instrumentation Bus)
  • PC Card, previously known as PCMCIA, much used in laptop computers and other portables, but fading with the introduction of USB and built-in network and modem connections

Serial[edit]

  • Camera Link
  • CAN bus ("Controller Area Network")
  • eSATA
  • ExpressCard
  • Fieldbus
  • IEEE 1394 interface (FireWire)
  • RS-232
  • RS-485
  • Thunderbolt
  • USB

Examples of internal/external computer buses[edit]

  • Futurebus
  • InfiniBand
  • PCI Express External Cabling
  • QuickRing
  • Scalable Coherent Interface (SCI)
  • Small Computer System Interface (SCSI), Hard disk drive and tape drive peripheral attachment bus
  • Serial Attached SCSI (SAS) and other serial SCSI buses
  • Thunderbolt
  • Yapbus, a proprietary bus developed for the Pixar Image Computer

See also[edit]

  • Address decoder
  • Bus contention
  • Bus error
  • Bus mastering
  • Communication endpoint
  • Control bus
  • Crossbar switch
  • Memory address
  • Memory bus (Data bus)
  • Front-side bus (FSB)
  • External Bus Interface (EBI)
  • Harvard architecture
  • Master/slave (technology)
  • Network On Chip
  • List of device bandwidths
  • List of network buses
  • Software bus

References[edit]

  1. ^ Clifton, Carl (1986-09-19). What Every Engineer Should Know about Data Communications. CRC Press. p. 27. ISBN 9780824775667. Archived from the original on 2018-01-17. The internal computer bus is a parallel transmission scheme; within the computer....
  2. ^ Hollingdale, Stuart H. (1958-09-19). "Session 14. Data Processing". Applications of Computers. Atlas - Application of Computers, University of Nottingham 15–19 September 1958 (Conference paper). Archived from the original on 2020-05-25. Retrieved 2020-05-25.
  3. ^ "bus Definition from PC Magazine Encyclopedia". pcmag.com. 2014-05-29. Archived from the original on 2015-02-07. Retrieved 2014-06-21.
  4. ^ Avionic Systems Standardisation Committee, Guide to Digital Interface Standards For Military Avionic Applications, ASSC/110/6/2, Issue 2, September 2003
  5. ^ a b Don Lancaster. "TV Typewriter Cookbook". (TV Typewriter). Section "Bus Organization". p. 82.
  6. ^ See the early Australian CSIRAC computer
  7. ^ Linda Null; Julia Lobur (2006). The essentials of computer organization and architecture (2nd ed.). Jones & Bartlett Learning. pp. 33, 179–181. ISBN 978-0-7637-3769-6. Archived from the original on 2018-01-17.
  8. ^ C. Gordon Bell; R. Cady; H. McFarland; B. Delagi; J. O'Laughlin; R. Noonan; W. Wulf (1970). A New Architecture for Mini-Computers—The DEC PDP-11 (PDF). Spring Joint Computer Conference. pp. 657–675. Archived (PDF) from the original on 2011-11-27.
  9. ^ Bray, Andrew C.; Dickens, Adrian C.; Holmes, Mark A. (1983). "28. The One Megahertz bus". The Advanced User Guide for the BBC Microcomputer. Cambridge, UK: Cambridge Microcomputer Centre. pp. 442–443. ISBN 0-946827-00-1. Archived from the original (zipped PDF) on 2006-01-14. Retrieved 2008-03-28.
  10. ^ "ABOUT CXL". Compute Express Link. Retrieved 2019-08-09.
  11. ^ "Odds & Ends: Opti Local Bus, Aria sound cards". 2015-07-21. Retrieved 2021-02-19.

External links[edit]

  • Computer hardware buses at Curlie
  • Computer hardware buses and slots pinouts with brief descriptions