Los buses constituyen el sistema de comunicación interno del computador. Están formados por conjuntos de líneas o canales eléctricos o digitales que interconectan los distintos elementos del sistema, permitiendo el intercambio de datos, direcciones y señales de control.
Un bus está compuesto por tres grupos principales de líneas:
Transportan la información binaria (datos) entre la CPU, la memoria y los periféricos.
Bidireccionales: permiten enviar y recibir datos.
Su número determina el ancho del bus (8, 16, 32, 64 bits...).
Transmiten la dirección de memoria o de dispositivo con el que se quiere comunicar.
Unidireccionales: van de la CPU hacia los dispositivos.
Determinan el espacio de direccionamiento (ej.: 32 bits = 4 GB de RAM direccionable).
Transmiten señales de gestión y sincronización.
Algunas señales comunes:
Lectura (RD) / Escritura (WR)
Interrupciones (IRQ)
Reconocimiento de interrupción (ACK)
Señales de reloj (CLK)
Solicitud de uso del bus (BUS REQUEST)
Concesión del bus (BUS GRANT)
Un solo bus compartido para datos, direcciones y control.
Ejemplo: bus del sistema tradicional.
Ventaja: simplicidad.
Desventaja: cuello de botella (varios dispositivos compiten por el mismo canal).
Se dividen físicamente en buses independientes:
Bus de datos
Bus de direcciones
Bus de control
Ventaja: mayor rendimiento y menor interferencia.
Utilizado en arquitecturas modernas.
Funcionamiento básico del Bus
CPU coloca la dirección del dato en el bus de direcciones.
Usa el bus de control para indicar si es lectura o escritura.
El dato viaja por el bus de datos entre la CPU y el dispositivo correspondiente.
El bus puede ser liberado para que lo use otro dispositivo (por ejemplo, el DMA).
La CPU o el dispositivo con mayor prioridad accede primero.
Se reparte el acceso de forma equitativa entre los dispositivos.
Un controlador de bus determina quién accede.
Conclusión
La estructura de los buses es esencial para el rendimiento y eficiencia de un sistema informático. Comprender cómo están compuestos y cómo operan permite entender cómo se comunican los componentes internos del computador y cómo se diseñan arquitecturas más eficientes y escalables.