La contención de bus es un estado indeseable en el diseño de computadoras en el que más de un dispositivo en un bus intenta colocarle valores al mismo tiempo.
La contención de bus es el tipo de contención de telecomunicaciones que ocurre cuando todos los dispositivos que se comunican se comunican directamente entre sí a través de un solo canal compartido, y en contraste con la "contención de red" que ocurre cuando los dispositivos que se comunican se comunican indirectamente entre sí, a través de conexiones punto a punto. a través de enrutadores o puentes. [1] [ verificación fallida ]
La contención del bus puede provocar un funcionamiento erróneo, un consumo excesivo de energía y, en casos inusuales, daños permanentes en el hardware, como quemar un MOSFET . [2]
Descripción
La mayoría de las arquitecturas de bus requieren que los dispositivos que comparten un bus sigan un protocolo de arbitraje cuidadosamente diseñado para que la probabilidad de disputa sea insignificante. [3] Sin embargo, cuando los dispositivos en el bus tienen errores lógicos, defectos de fabricación o se manejan más allá de sus velocidades de diseño, el arbitraje puede fallar y puede resultar en contención. También pueden surgir disputas en sistemas que tienen un mapeo de memoria programable cuando se escriben valores ilegales en los registros que controlan el mapeo. La mayoría de los sistemas informáticos de pequeña escala están cuidadosamente diseñados para evitar la contención del bus en el bus del sistema . Usan un solo dispositivo, llamado árbitro de bus , que controla qué dispositivo tiene permitido conducir el bus en cada instante, por lo que la contención del bus nunca ocurre en el funcionamiento normal. La solución estándar para la contención de bus entre dispositivos de memoria, como EEPROM y SRAM , es el bus de tres estados [2] con un árbitro de bus.
Algunas redes, como Token Ring , también están diseñadas para evitar la contención del bus, por lo que la contención del bus nunca ocurre en el funcionamiento normal.
La mayoría de las redes están diseñadas con hardware lo suficientemente robusto como para tolerar la contención ocasional del bus en la red. CAN bus , ALOHAnet , Ethernet , etc., todos experimentan contención de bus ocasional en funcionamiento normal, pero utilizan algún protocolo (como acceso múltiple con prevención de colisiones , acceso múltiple con detección de portadora con detección de colisión o solicitud de repetición automática ) para minimizar los tiempos que se produzca la contención y reenviar datos que se corrompieron en una colisión de paquetes .
Ver también
Referencias
- ^ Theodoros Konstantakopoulos, Jonathan Eastep, James Psota y Anant Agarwal. "Escalabilidad energética de redes de interconexión en chip en arquitecturas multinúcleo" .
- ^ a b Ian Sinclair; John Dunton. "Manual Práctico de Electrónica" 2013. apartado "Control de tres estados". pag. 208.
- ^ Tanenbaum, Andrew (1990), Organización informática estructurada (3ª ed.), Prentice Hall , págs. 121-124, ISBN 0-13-852872-1.