Transferencia de Datos. Los Sistemas de BUS Los buses son el mecanismo más común para la comunicación entre los dispositivos del computador. Físicamente son conductores por donde viajan señales eléctricas.
Los buses son casi todos esos caminos que se ven en las tarjetas madre de las imágenes anteriores. El bus es un dispositivo en común entre dos o más dispositivos, si dos dispositivos transmiten al mismo tiempo señales las señales pueden distorsionarse y consecuentemente perder información. Por dicho motivo existe un arbitraje para decidir quién hace uso del bus. Por cada línea se pueden trasmitir señales que representan unos y ceros, en secuencia, de a una señal por unidad de tiempo. Si se desea por ejemplo transmitir 1 byte, se deberán mandar 8 señales, una detrás de otra, en consecuencia se tardaría 8 unidades de tiempo. Para poder transmitir 1 byte en 1 sola unidad de tiempo tendríamos que usar 8 líneas al mismo tiempo. Existen varios tipos de buses que realizan la tarea de interconexión entre las distintas partes del computador, al bus que comunica al procesador, memoria y E/S se lo denomina bus del sistema.
a) Bus de datos: Por estas líneas se transfieren los datos, pueden ser de 8, 16, 32 o más líneas, lo cual nos indica cuantos datos podemos transferir al mismo tiempo, y es muy influyente en el rendimiento del sistema. Por ejemplo si el bus es de 8 líneas y las instrucciones son de 16 bits, el sistema va a tener que acceder 2 veces a memoria para poder leer la instrucción, el doble de tiempo en leer instrucciones comparando con un bus de datos de 16 líneas.
b) Bus de direcciones: Por estas líneas se envía la dirección a la cual se requiere hacer referencia para una lectura o escritura, si el bus es de 8 líneas por ejemplo, las combinaciones posibles para identificar una dirección irían del 00000000 al 11111111, son 256 combinaciones posibles, en consecuencia el ancho del bus de datos nos indica la cantidad de direcciones de memoria a la que podemos hacer referencia. Dentro de las direcciones posibles, en general el sistema no usa todas
Para hacer referencia a la memoria principal, una parte las usa para hacer referencia a los puertos de E/S. c) Bus de control: Estas líneas son utilizadas para controlar el uso del bus de dirección y del bus de datos. Se transmiten órdenes y señales de temporización.
Las órdenes son muy diversas, las más comunes son:
Escritura en memoria.
Lectura de memoria.
Escritura de E/S.
Lectura de E/S.
Transferencia reconocida.
Petición del bus
. Sesión del bus
. Petición de interrupción.
Interrupción reconocida
. Señal de reloj
. Todo elemento que esté conectado al bus tiene que saber reconocer si la dirección que está en el bus de datos le corresponde, tiene que reconocer algunas órdenes transmitidas por el bus de control, y puede emitir algún tipo de señal por el bus de control (señal de interrupción, señal de reconocimiento de alguna petición, etc.). En general, cuanto más dispositivos conectamos al bus, disminuye el rendimiento del sistema; las causantes de esto son varias, pero las más importantes son el tiempo de sincronización que se necesita para coordinar el uso del bus entre todos los dispositivos, y que el bus tiene una capacidad máxima, la cual puede llegar a convertirse en un cuello de botella del sistema. Una de las formas de tratar este problema es implementando jerarquía de buses.
No hay comentarios:
Publicar un comentario