2.
2.7.
7. EL
ELEM
EMEN
ENTO
TOS DE D
S DE DIS
ISEÑ
EÑO DE U
O DE UN BU
N BUS
S
Aunque existe una gran diversidad de diseños de buses, hay unos pocos Aunque existe una gran diversidad de diseños de buses, hay unos pocos parámetr
parámetros o elementos de diseño que os o elementos de diseño que sirven para distinguir y sirven para distinguir y clasifcar losclasifcar los buses. La tabla 3.2 enumera los elementos clave.
buses. La tabla 3.2 enumera los elementos clave.
tabla 3.2 Elementos de diseño de un bus
tabla 3.2 Elementos de diseño de un bus
2
2..7
7..1
1..
T
TII
O
OS
S D
DE
E B
BU
US
SE
ES
S
Las lneas del bus se pueden dividir
Las lneas del bus se pueden dividir en dos tipos gen!ricos" dedicadas yen dos tipos gen!ricos" dedicadas y multiplexadas.
multiplexadas.
##
Dedi!adas
Dedi!adas
. # $na lnea de . # $na lnea de bus dedicada está permanentbus dedicada está permanente asignada a unae asignada a una %unci&n o a un subcon'unto %sico de componentes del computador.%unci&n o a un subcon'unto %sico de componentes del computador.
$n e'emplo de dedicaci&n %uncional, com(n en muchos buses, es el uso $n e'emplo de dedicaci&n %uncional, com(n en muchos buses, es el uso de lneas separadas para direcciones y para datos. )in embargo, no es de lneas separadas para direcciones y para datos. )in embargo, no es esencial. *or e'emplo, la in%ormaci&n de direcci&n y datos podra
esencial. *or e'emplo, la in%ormaci&n de direcci&n y datos podra transmitirs
transmitirse a trav!s del mismo con'unto de lneas si e a trav!s del mismo con'unto de lneas si se utili+a una lnea dese utili+a una lnea de control de irecci&n -álida. Al comien+o de la trans%erencia de datos, la control de irecci&n -álida. Al comien+o de la trans%erencia de datos, la direcci&n se sit(a en el bus y se activa la lnea de irecci&n -álida. n ese direcci&n se sit(a en el bus y se activa la lnea de irecci&n -álida. n ese momento, cada m&dulo dispone de un
momento, cada m&dulo dispone de un periodo de tiempo para copiar laperiodo de tiempo para copiar la direcci&n y determinar si es !l el m&dulo direccionado. espu!s la
direcci&n y determinar si es !l el m&dulo direccionado. espu!s la direcci&n se quita del bus, y las mismas conexiones se utili+an para la direcci&n se quita del bus, y las mismas conexiones se utili+an para la
subsecuente trans%erencia de lectura o escritura de datos. subsecuente trans%erencia de lectura o escritura de datos.
/igura 3.01. edicadas
#
Multi"le#ado
. #ste m!todo de uso de las mismas lneas para usos di%erentes se llama multiplexado en el tiempo.La venta'a del multiplexado en el tiempo es el uso de menos lneas, cosa que ahorra espacio y, normalmente, costes. La desventa'a es que se
necesita una circuitera más comple'a en cada m&dulo. Además, existe una posible reducci&n en las prestaciones debido a que los eventos que deben
compartir las mismas lneas no pueden producirse en paralelo. /igura 3.2. ultiplexado
2.7.2.
M$TODO DE %&BIT&%'E
.
n todos los sistemas, exceptuando los más simples, más de un m&dulo puede necesitar el control del bus. *or e'emplo, un m&dulo de 4) puede necesitar leer o escribir directamente en memoria, sin enviar el dato al
procesador. *uesto que en un instante dado solo una unidad puede transmitir a trav!s del bus, se requiere alg(n m!todo de arbitra'e. Los diversos m!todos se pueden clasifcar aproximadamente como centrali+ados o distribuidos.
# n un
es(uema !ent)ali*ado
, un (nico dispositivo hard5are, denominado controlador del bus o árbitro, es responsable de asignartiempos en el bus. l dispositivo puede estar en un m&dulo separado o ser parte del procesador.
# n un
e
s(uema dist)ibuido
+
no existe un controlador central. n su lugar, cada m&dulo dispone de l&gica para controlar el acceso y los m&dulos act(an con'untamente para compartir el bus.n ambos m!todos de arbitra'e, el prop&sito es designar un dispositivo, el procesador o un m&dulo de 4) como maestro del bus. l maestro podra entonces iniciar una trans%erencia de datos 6lectura o escritura7 con otro dispositivo, que act(a como esclavo en este intercambio concreto.
2.7.3.
TEMO&,-%,/N
.
l t!rmino tempori+aci&n hace re%erencia a la %orma en la que se coordinan los eventos en el bus. Los buses utili+an tempori+aci&n sncrona o asincrona.
#
S0n!)ona.
8on tempori+aci&n sncrona, la presencia de un evento en el bus está determinada por un relo'. l bus incluye una lnea de relo' a trav!s de la que se transmite una secuencia en la que se alternanintervalos regulares de igual duraci&n a uno y a cero. $n (nico intervalo a uno seguido de otro a cero se conoce como ciclo de relo' o ciclo de bus y defne un intervalo de tiempo unidad 9time slot7. :odos los dispositivos del bus pueden leer la lnea de relo', y todos los eventos empie+an al principio del ciclo de relo'. La /igura 3.01 muestra el diagrama de tiempos de una operaci&n de lectura sncrona 6en el Ap!ndice 3 A se puede consultar una descripci&n de los diagramas de tiempo7. ;tras señales del bus pueden cambiar en el <anco de subida de la señal de relo' 6reaccionan con un ligero retardo7. La mayora de los eventos se prolongan durante un (nico ciclo de relo'. n este e'emplo sencillo, la 8*$ activa una señal de lectura y sit(a una direcci&n de memoria en las lneas de direcci&n durante el
primer ciclo y puede activar varias lneas de estado. $na ve+ que las lneas se han estabili+ado, el procesador activa una señal de inicio para indicar la presencia de la direcci&n en el bus. n el caso de una lectura, el
procesador pone una orden de lectura al comien+o del segundo ciclo. l m&dulo de memoria reconoce la direcci&n y, despu!s de un retardo de un ciclo, sit(a el dato en las lneas de datos. l procesador lee el dato de dichas lneas y quita la señal de lectura. n el caso de una escritura, el procesador pone el dato en las lneas de datos al comien+o del segundo ciclo, y pone la orden de escritura una ve+ estabili+adas las lneas de datos. l m&dulo de memoria copia la in%ormaci&n de las lneas de datos durante el tercer ciclo de relo'.
#
%s0n!)ona.
8on la tempori+aci&n asncrona, la presencia de un evento en el bus es consecuencia y depende de que se produ+ca un evento previo. n el e'emplo sencillo de la /igura 3.2a, el procesador sit(a las señales de direcci&n y lectura en el bus. espu!s de un breve intervalo para que las señales se estabilicen, activa la orden de lectura, indicando la presencia de señales de direcci&n y control válidas. l m&dulo de memoria correspondiente decodifca la direcci&n y responde proporcionando el dato en la lnea de datos. $na ve+ estabili+adas las lneas de datos, el m&dulo de memoria activa la lnea de reconocimiento para indicar al procesador que el dato está disponible. 8uando el maestro ha ledo el dato de las lneas correspondientes, deshabilita la señal de lectura. sto hace que el m&dulo de memoria libere las lneas de datos y reconocimiento. *or(ltimo, una ve+ se ha desactivado la lnea de reconocimiento, el procesador quita la in%ormaci&n de direcci&n de las lneas
/igura 3.20 :empori+aci&n sncrona de las ;peraciones de bus
La /igura 3.2b muestra una operaci&n sencilla de escritura asincrona. n este caso, el maestro sit(a el dato en las lneas de datos al mismo tiempo que la
direcci&n y la in%ormaci&n de estado en las lneas correspondientes. l m&dulo de memoria responde a la orden de escritura copiando el dato de las lneas de datos y activando la lnea de reconocimiento. ntonces, el maestro retira la señal de escritura y el m&dulo de memoria la señal de reconocimiento. La tempori+aci&n sncrona es más %ácil de implementar y comprobar. )in embargo, es menos <exible que la tempori+aci&n asincrona. ebido a que todos los dispositivos en un bus sncrono deben utili+ar la misma %recuencia de relo', el sistema no puede aprovechar las me'oras en las prestaciones de los dispositivos. 8on la
lentos y rápidos, utili+ando tanto las tecnologas más antiguas, como las más recientes.
2.7..
%NU&% DEL BUS
.l concepto de anchura del bus se ha presentado ya. La anchura del bus de datos a%ecta a las prestaciones del sistema"
#
uanto m4s an!5o es el bus de datos
, mayor es el n(mero de bits que se transmiten a la ve+. La anchura del bus de direcciones a%ecta a la capacidad del sistema"#
uanto m4s an!5o es el bus de di)e!!iones
, mayor es el rango de posiciones a las que se puede hacer re%erencia./igura 3.20 :empori+aci&n sncrona de las ;peraciones de bus 6a7 8iclo de lectura del bus de sistema. 6b7 8iclo de escritura del bus sistema.
2.7.6.
TIO DE T&%NSE&ENI% DE D%TOS
.*or (ltimo, un bus permite varios tipos de trans%erencias de datos, tal y como ilustra la fgura. :odos los buses permiten tantas trans%erencias de"
#
Es!)itu)a
6dato de maestro a esclavo7 como de" # Le!tu)a
6dato de esclavo a maestro7.n el caso de un bus con direcciones y datos multiplexados, el bus se utili+a primero para especifcar la direcci&n y luego para trans%erir el dato. n una operaci&n de lectura, generalmente hay un tiempo de espera mientras el dato se está captando del dispositivo esclavo para situarlo en el bus. :anto para la
lectura como para la escritura, puede haber tambi!n un retardo si se necesita utili+ar alg(n procedimiento de arbitra'e para acceder al control del bus en el resto de la operaci&n 6es decir, tomar el bus para solicitar una lectura o una escritura, y despu!s tomar el bus de nuevo para reali+ar la lectura o la
escritura7.
/igura 3.22 ;peraci&n de scritura y Lectura 6multiplicado7
n el caso de que haya lneas dedicadas a datos y a direcciones, la direcci&n se sit(a en el bus de direcciones y se mantiene ah mientras que el dato se ubica en el bus de datos. n una
es!)itu)a
, el maestro pone el dato en el bus de datos tan pronto como se han estabili+ado las lneas de direcci&n y elesclavo ha podido reconocer su direcci&n. n una operaci&n de lectura, el esclavo pone el dato en el bus de datos tan pronto como haya reconocido su direcci&n y disponga del mismo. n ciertos buses tambi!n son posibles
/igura 3.23 ;peraci&n de scritura y Lectura 6no multiplicado7
$na operaci&n de
le!tu)amodi8!a!i9nes!)itu)a
es simplemente una lectura seguida inmediatamente de una escritura en la misma direcci&n. La direcci&n se proporciona una sola ve+ al comien+o de la operaci&n. La operaci&n completa es generalmente indivisible de cara a evitar cualquier acceso al dato por otros posibles maestros del bus. l ob'etivo primordial de esta posibilidad es protegerlos recursos de memoria compartida en un sistema con multiprogramaci&n /igura 3.2= ;peraci&n Lectura#modifcaci&n#scritura
La le!tu)ades"u:s dees!)itu)a
es una operaci&n indivisible que consiste en una escritura seguida inmediatamente de una lectura en la misma direcci&n. La operaci&n de lectura se puede reali+ar con el prop&sito de comprobar el/igura 3.2= ;peraci&n de Lectura#despu!s#de#scritura
Algunos buses tambi!n permiten trans%erencias de