Está en la página 1de 8

2.7.

ELEMENTOS DE DISEO DE UN BUS

Aunque existe una gran diversidad de diseos de buses, hay unos pocos
parmetros o elementos de diseo que sirven para distinguir y clasificar los
buses. La tabla 3.2 enumera los elementos clave.

tabla 3.2 Elementos de diseo de un bus

2.7.1.

TIPOS DE BUSES

Las lneas del bus se pueden dividir en dos tipos genricos: dedicadas y
multiplexadas.
-

Dedicadas. - Una lnea de bus dedicada est permanente asignada a una


funcin o a un subconjunto fsico de componentes del computador.
Un ejemplo de dedicacin funcional, comn en muchos buses, es el uso
de lneas separadas para direcciones y para datos. Sin embargo, no es
esencial. Por ejemplo, la informacin de direccin y datos podra
transmitirse a travs del mismo conjunto de lneas si se utiliza una lnea de
control de Direccin Vlida. Al comienzo de la transferencia de datos, la
direccin se sita en el bus y se activa la lnea de Direccin Vlida. En ese
momento, cada mdulo dispone de un periodo de tiempo para copiar la
direccin y determinar si es l el mdulo direccionado. Despus la
direccin se quita del bus, y las mismas conexiones se utilizan para la

subsecuente transferencia de lectura o escritura de datos.

Figura 3.19. Dedicadas


-

Multiplexado. -Este mtodo de uso de las mismas lneas para usos


diferentes se llama multiplexado en el tiempo.
La ventaja del multiplexado en el tiempo es el uso de menos lneas, cosa
que ahorra espacio y, normalmente, costes. La desventaja es que se
necesita una circuitera ms compleja en cada mdulo. Adems, existe una
posible reduccin en las prestaciones debido a que los eventos que deben

compartir las mismas lneas no pueden producirse en paralelo.


Figura 3.20. Multiplexado

2.7.2. MTODO DE ARBITRAJE.


En todos los sistemas, exceptuando los ms simples, ms de un mdulo
puede necesitar el control del bus. Por ejemplo, un mdulo de E/S puede
necesitar leer o escribir directamente en memoria, sin enviar el dato al
procesador. Puesto que en un instante dado solo una unidad puede transmitir a
travs del bus, se requiere algn mtodo de arbitraje. Los diversos mtodos se
pueden clasificar aproximadamente como centralizados o distribuidos.
-

En un esquema centralizado, un nico dispositivo hardware,


denominado controlador del bus o rbitro, es responsable de asignar
tiempos en el bus. El dispositivo puede estar en un mdulo separado o ser
parte del procesador.

En un esquema distribuido, no existe un controlador central. En su


lugar, cada mdulo dispone de lgica para controlar el acceso y los
mdulos actan conjuntamente para compartir el bus.

En ambos mtodos de arbitraje, el propsito es designar un dispositivo, el


procesador o un mdulo de E/S como maestro del bus. El maestro podra
entonces iniciar una transferencia de datos (lectura o escritura) con otro
dispositivo, que acta como esclavo en este intercambio concreto.
2.7.3. TEMPORZACN.
El trmino temporizacin hace referencia a la forma en la que se coordinan los
eventos en el bus. Los buses utilizan temporizacin sncrona o asincrona.

Sncrona. - Con temporizacin sncrona, la presencia de un evento en el


bus est determinada por un reloj. El bus incluye una lnea de reloj a
travs de la que se transmite una secuencia en la que se alternan
intervalos regulares de igual duracin a uno y a cero. Un nico intervalo a
uno seguido de otro a cero se conoce como ciclo de reloj o ciclo de bus y
define un intervalo de tiempo unidad {time slot). Todos los dispositivos del
bus pueden leer la lnea de reloj, y todos los eventos empiezan al principio
del ciclo de reloj. La Figura 3.19 muestra el diagrama de tiempos de una
operacin de lectura sncrona (en el Apndice 3 A se puede consultar una
descripcin de los diagramas de tiempo). Otras seales del bus pueden
cambiar en el flanco de subida de la seal de reloj (reaccionan con un
ligero retardo). La mayora de los eventos se prolongan durante un nico
ciclo de reloj. En este ejemplo sencillo, la CPU activa una seal de lectura y
sita una direccin de memoria en las lneas de direccin durante el
primer ciclo y puede activar varias lneas de estado. Una vez que las lneas
se han estabilizado, el procesador activa una seal de inicio para indicar la
presencia de la direccin en el bus. En el caso de una lectura, el
procesador pone una orden de lectura al comienzo del segundo ciclo. El
mdulo de memoria reconoce la direccin y, despus de un retardo de un
ciclo, sita el dato en las lneas de datos. El procesador lee el dato de
dichas lneas y quita la seal de lectura. En el caso de una escritura, el
procesador pone el dato en las lneas de datos al comienzo del segundo
ciclo, y pone la orden de escritura una vez estabilizadas las lneas de
datos. El mdulo de memoria copia la informacin de las lneas de datos
durante el tercer ciclo de reloj.

Asncrona. - Con la temporizacin asncrona, la presencia de un evento


en el bus es consecuencia y depende de que se produzca un evento
previo. En el ejemplo sencillo de la Figura 3.20a, el procesador sita las
seales de direccin y lectura en el bus. Despus de un breve intervalo
para que las seales se estabilicen, activa la orden de lectura, indicando la
presencia de seales de direccin y control vlidas. El mdulo de memoria
correspondiente decodifica la direccin y responde proporcionando el dato
en la lnea de datos. Una vez estabilizadas las lneas de datos, el mdulo
de memoria activa la lnea de reconocimiento para indicar al procesador
que el dato est disponible. Cuando el maestro ha ledo el dato de las
lneas correspondientes, deshabilita la seal de lectura. Esto hace que el
mdulo de memoria libere las lneas de datos y reconocimiento. Por
ltimo, una vez se ha desactivado la lnea de reconocimiento, el
procesador quita la informacin de direccin de las lneas
correspondientes.

Figura 3.21 Temporizacin sncrona de las Operaciones de bus

La Figura 3.20b muestra una operacin sencilla de escritura asincrona. En este


caso, el maestro sita el dato en las lneas de datos al mismo tiempo que la
direccin y la informacin de estado en las lneas correspondientes. El mdulo de
memoria responde a la orden de escritura copiando el dato de las lneas de datos
y activando la lnea de reconocimiento. Entonces, el maestro retira la seal de
escritura y el mdulo de memoria la seal de reconocimiento. La temporizacin
sncrona es ms fcil de implementar y comprobar. Sin embargo, es menos
flexible que la temporizacin asincrona. Debido a que todos los dispositivos en
un bus sncrono deben utilizar la misma frecuencia de reloj, el sistema no puede
aprovechar las mejoras en las prestaciones de los dispositivos. Con la
temporizacin asincrona, pueden compartir el bus una mezcla de dispositivos

lentos y rpidos, utilizando tanto las tecnologas ms antiguas, como las ms


recientes.
2.7.4. ANCHURA DEL BUS.
El concepto de anchura del bus se ha presentado ya. La anchura del bus de datos
afecta a las prestaciones del sistema:
-Cuanto ms ancho es el bus de datos, mayor es el nmero de bits
que se transmiten a la vez. La anchura del bus de direcciones afecta a la
capacidad del sistema:
-Cuanto ms ancho es el bus de direcciones, mayor es el rango
de posiciones a las que se puede hacer referencia.

Figura 3.21 Temporizacin sncrona de las Operaciones de bus (a) Ciclo de lectura
del bus de sistema. (b) Ciclo de escritura del bus sistema.

2.7.5. TIPO DE TRANSFERENCIA DE DATOS.


Por ltimo, un bus permite varios tipos de transferencias de datos, tal y como
ilustra la figura. Todos los buses permiten tantas transferencias de:
-

Escritura (dato de maestro a esclavo) como de:


Lectura (dato de esclavo a maestro).

En el caso de un bus con direcciones y datos multiplexados, el bus se utiliza


primero para especificar la direccin y luego para transferir el dato. En una
operacin de lectura, generalmente hay un tiempo de espera mientras el dato
se est captando del dispositivo esclavo para situarlo en el bus. Tanto para la

lectura como para la escritura, puede haber tambin un retardo si se necesita


utilizar algn procedimiento de arbitraje para acceder al control del bus en el
resto de la operacin (es decir, tomar el bus para solicitar una lectura o una
escritura, y despus tomar el bus de nuevo para realizar la lectura o la
escritura).
Figura 3.22 Operacin de Escritura y Lectura (multiplicado)
En el caso de que haya lneas dedicadas a datos y a direcciones, la direccin
se sita en el bus de direcciones y se mantiene ah mientras que el dato se
ubica en el bus de datos. En una escritura, el maestro pone el dato en el bus
de datos tan pronto como se han estabilizado las lneas de direccin y el
esclavo ha podido reconocer su direccin. En una operacin de lectura, el
esclavo pone el dato en el bus de datos tan pronto como haya reconocido su
direccin y disponga del mismo. En ciertos buses tambin son posibles
algunas operaciones combinadas.

Figura 3.23 Operacin de Escritura y Lectura (no multiplicado)

Una operacin de lectura-modificacin-escritura es simplemente una lectura


seguida inmediatamente de una escritura en la misma direccin. La direccin se
proporciona una sola vez al comienzo de la operacin. La operacin completa es
generalmente indivisible de cara a evitar cualquier acceso al dato por otros
posibles maestros del bus. El objetivo primordial de esta posibilidad es proteger

los recursos de memoria compartida en un sistema con multiprogramacin


Figura 3.24 Operacin Lectura-modificacin-Escritura

La lectura-despus de-escritura es una operacin indivisible que consiste en


una escritura seguida inmediatamente de una lectura en la misma direccin. La
operacin de lectura se puede realizar con el propsito de comprobar el
resultado.

Figura 3.24 Operacin de Lectura-despus-de-Escritura

Algunos buses tambin permiten transferencias de bloques de datos. En este


caso, un ciclo de direccin viene seguido por n ciclos de datos. El primer dato se
transfiere a o desde la direccin especificada; el resto de datos se transfieren a o
desde las direcciones siguientes.

Figura 3.24 transferencias de datos

También podría gustarte