¿Qué es un bus?
Encontré tres conceptos:
- Un bus, es un canal de notificación que las computadoras usan para comunicar sus componentes entre sí, por ejemplo para comunicar el procesador con los periféricos, memoria o dispositivos de almacenamiento.
- Se denomina bus, en informática, al conjunto de conexiones físicas (cables, placa de circuito impreso, etc.) que pueden compartirse con múltiples componentes de hardware para que se comuniquen entre sí.
- Un conjunto de líneas compartidas por distintos elementos de un computador, cuya función es permitir la comunicación entre los distintos subsistemas.
Un poco de
historia…
Los primeros computadores
sólo tenían dos buses pasivos, uno para la memoria y
otro para los demás dispositivos. La CPU controlaba y gestionaba
ambos buses. El Bus ISA en los años 70 y 80 deja paso a nuevas generaciones a
medida que los procesadores funcionan con frecuencias más altas. Aparece el
concepto de bus de sistema (conexión entre el procesador y la
RAM) y de buses de expansión (bus AGP para pantalla, bus PCI para
tarjetas expansión, bus para periféricos ISA, PCI, SATA,...) necesitando un
chip que gestione el tráfico: el chipset.
SEGUNDA GENERACIÓN
Cuando los procesadores
empezaron a funcionar con frecuencias más altas, se hizo necesario ordenar los
buses de acuerdo a su frecuencia: se crearon los buses de sistema, es la
conexión entre el procesador y la RAM, y de buses de expansión, haciendo
necesario el uso de un Chipset para conectar todo el sistema.
El bus Nubus fue un gran
avance ya que tenía un controlador propio y permitía utilizarlo en diferentes
arquitecturas. Se caracterizaba por tener un ancho de 32 bits y algunas
opciones Plug and Play. Entre otros ejemplos de estos buses autónomos, están el
AGP y el bus PCI.
Una tercera generación (bus
PCI-Express, bus Infiniband, HyperTransport) ha cambiado la forma de conexión.
Los buses de las primeras generaciones se sincronizaban compartiendo señales de
reloj. Los actuales se conectan punto a punto, como sucede en las redes de
comunicaciones. Cada dispositivo negocia su conexión de manera serial o
paralela...
El avance constante de los
microprocesadores Intel y AMD fuerza al resto de fabricantes de componentes a
evolucionar en la misma línea.
Un chip llamado puente
norte (north bridge G31 de Intel en la imagen de arriba) gestiona
microprocesador, memoria y pantalla. Otro chip llamado puente sur (south
bridge ICH7 de Intel en la imagen de arriba) gestiona el resto de dispositivos.

El siguiente esquema
representa, de manera básica, una posible arquitectura más o menos actual. El
microprocesador se conecta al puente norte con el bus FSB (Front
Side Bus, ya obsoleto). El bus AGP conecta el adaptador de
gráficos con la memoria, el bus ATA conecta los dispositivos
de almacenamiento masivo de datos (discos duros y las unidades DVDs) mediante
el puente sur, el bus PCI (Peripheral Component Interconnect)
conecta muchos tipos de dispositivos periféricos PCI mediante el puente sur.
Esquema genérico detallado de los distintos buses en la arquitectura
actual.
¿Cuál es su propósito?
El propósito de los buses es
reducir el número de rutas necesarias para la comunicación entre los distintos
componentes, al realizar las comunicaciones a través de un solo canal de datos.
Ésta es la razón por la que, a veces, se utiliza la metáfora "autopista de
datos".
Características
de un bus
Un bus se caracteriza por la
cantidad de información que se transmite en forma simultánea. Este volumen se
expresa en bits y corresponde al número de líneas físicas mediante
las cuales se envía la información en forma simultánea. Un cable plano de 32
hilos permite la transmisión de 32 bits en paralelo. El término "ancho"
se utiliza para designar el número de bits que un bus puede transmitir
simultáneamente.
Por otra parte, la velocidad
del bus se define a través de su frecuencia (que se expresa en
Hercios o Hertz), es decir el número de paquetes de datos que pueden ser
enviados o recibidos por segundo. Cada vez que se envían o reciben estos datos
podemos hablar de ciclo.
De esta manera, es posible
hallar la velocidad de transferencia máxima del bus (la cantidad de
datos que puede transportar por unidad de tiempo) al multiplicar su ancho por
la frecuencia. Por lo tanto, un bus con un ancho de 16 bits y una frecuencia de
133 MHz, tiene una velocidad de transferencia de:
16 * 133.106
= 2128*106 bit/s, o 2128*106/8 = 266*106
bytes/s o 266*106 /1000 = 266*103 KB/s o 259.7*103
/1000 = 266 MB/s
Tipos de
buses por tecnología
En forma muy general existen
tres tipos de buses, de acuerdo a la función que realizan, cada bus se halla
generalmente constituido por entre 50 y 100 líneas físicas distintas que se
dividen a su vez en tres subconjuntos:
1. Bus de direcciones.
2. Bus de datos.
3. Bus de control.
Bus de Direcciones
Este es un bus
unidireccional, (también conocido como bus de memoria)
las direcciones de memoria al que el procesador desea acceder fluye es una sola
dirección del CPU a la memoria ó a los elementos de entrada y salida.
Bus de Datos
Este es un bus
bidireccional, pues los datos pueden fluir hacia o desde la CPU, transfiere
tanto las instrucciones que provienen del procesador como las que se dirigen
hacia él, pueden ser entradas o salidas, según la operación que se esté
realizando (lectura o escritura). En todos los casos, las palabras de datos
transmitidas, se clasifican dependiendo del microprocesador.
Bus de Control
En ocasiones
denominado bus de comando, es
un conjunto de señales que se usa para sincronizar las actividades y
transacciones con los periféricos del sistema en otras palabras transporta las
órdenes y las señales de sincronización que provienen de la unidad de control y
viajan hacia los distintos componentes de hardware. Se trata de un bus
bidireccional en la medida en que también transmite señales de respuesta del
hardware.
Las señales más importantes
en el bus de control son las señales de cronómetro, que generan los intervalos
de tiempo durante los cuales se realizan las operaciones. Este tipo de señales
depende directamente del tipo del microprocesador.
Clasificación
según el criterio de su situación física
Buses internos.
Buses Externos.
Bus Interno: sistema (que también se conoce como bus frontal o FSB). El bus interno permite al procesador comunicarse con la memoria central del sistema (la memoria RAM). Este mueve datos entre los componentes internos del microprocesador. Todas las partes del microprocesador están unidas mediante diversas líneas eléctricas. El conjunto de estas líneas se denominan bus interno del microprocesador. Por este bus interno circulan los datos (bus de datos), las señales de control (bus de control) o las direcciones de memoria (bus de direcciones). Cuando se habla de un microprocesador de 32 bits, se está diciendo que el número de líneas del bus interno es de 32.
Bus externo o de expansión: (llamado algunas veces bus de entrada/salida) permite a diversos componentes de la placa madre (USB, puerto serial o paralelo, tarjetas insertadas en conectores PCI, discos duros, unidades de CD-ROM y CD-RW, etc.) comunicarse entre sí. Sin embargo, permite principalmente agregar nuevos dispositivos por medio de las ranuras de expansión que están a su vez conectadas al bus de entrada/salida. En pocas palabras se utiliza para comunicar el micro y otras partes, como periféricos y memoria.
El conjunto
de chips
Es el componente que envía
datos entre los distintos buses del equipo para que todos los componentes que
forman el equipo puedan a su vez comunicarse entre sí. Originalmente, el conjunto
de chips estaba compuesto por un gran número de chips electrónicos (de
allí su nombre).
Por lo general, presenta dos
componentes:
El Puente Norte (que también se conoce como controlador de memoria, se encarga de controlar las transferencias entre el procesador y la memoria RAM. Se encuentra ubicado físicamente cerca del procesador. También se lo conoce como GMCH que significa Concentrador de controladores gráficos y de memoria.
El Puente Norte (que también se conoce como controlador de memoria, se encarga de controlar las transferencias entre el procesador y la memoria RAM. Se encuentra ubicado físicamente cerca del procesador. También se lo conoce como GMCH que significa Concentrador de controladores gráficos y de memoria.
El Puente Sur (llamado también controlador de entrada/salida o de expansión) administra las comunicaciones entre los distintos dispositivos periféricos de entrada-salida. También se conoce como ICH (Concentrador controlador de E/S). Por lo general, se utiliza el término puente para designar un componente de interconexión entres dos buses.
Ejemplo de
bus
En la
imagen siguiente, el diagrama de bloques de Intel X58 Express Chipset para la
familia de microprocesadores Intel Core I7, presente en muchos ordenadores que
se venden actualmente y que están equipados con una placa base que responde a
este diagrama de bloques. Lo primero que nos llama la atención es el bus entre
el micro y la memoria DDR3 con triple canal y una velocidad máxima de 8.5
Gigabytes por segundo. El micro se conecta al puente norte mediante bus QPI punto
a punto, desarrollado por Intel reemplazando al bus FSB utilizado por otros
fabricantes y para competir con la tecnología HyperTransport. El
puente norte conecta con el nuevo bus PCI_Express para el sistema
gráfico (pantalla). El puente sur permite otros buses para puertos y
dispositivos USB 2.0, ATA, eSATA, audio, LAN.











