You are on page 1of 11

Connecting Processors, Memory and I/O Devices

Conexin de Procesadores, Memoria y Dispositivos


de Entrada y Salida
Anderson G. Roa, Cristian J. Martnez Alvarez
Universidad Industrial de Santander

Abstractthe following document is focused on describe the


different media and protocols that can be used in the communication posibilidad de adoptar perifricos diversos y de cualquier
between the different interfaces and devices with the computer. fabricante, siempre que sean compatibles. Pero para que
(Abstract) estos perifricos puedan conectarse con distintas maquinas era
necesario estandarizar el tipo de conexin que hay entre los
Keywordsinterfaces; net; I/O (input / output); devices; bridge perifricos y las maquinas, gracias a este desarrollo
(key words)
computacional se abri la posibilidad de formar diferentes
ResumenEl siguiente documento est enfocado en describir configuraciones en una mquina, bajando costos de las
los diferentes medios y protocolos que pueden ser usados en la mquinas de propsito general y a la vez se potencia la
comunicacin entre las diferentes interfaces y dispositivos con el capacidad de computadoras de propsitos especficos en la
computador. industria mundial.
Keywordsinterfaces; net; I/O (input / output); devices; bridge
(key words)

I. INTRODUCCION II. ESTADO DEL ARTE

En un sistema computacional, los diversos subsistemas deben El cambio en las conexiones internas del procesador ha
tener interfaces entre si que se comunican a travs de venido de la mano de evoluciones que se han producido en las
protocolos de transferencia que permiten enviar y recibir capacidades de integracin de cada momento.
informacin comnmente a travs de buses. El front-side bus, tambin conocido como FSB es el tipo de bus
Antiguamente los ordenadores utilizaban una topologa de bus usado como bus principal en algunos de los antiguos
nico, denominado bus del sistema o backplane para conectar microprocesadores de la marca Intel para comunicarse con el
procesador, memoria y mdulos de E/S, pero cuando el nmero circuito integrado auxiliar, es el que utilizaban procesadores
de dispositivos conectados a un bu aumenta disminuye su como los Core 2 Duo o los Atom. Dicho bus incluye seales de
rendimiento, por ello para evitar la cada de dicho rendimiento, datos, direcciones y control, asi como seales de reloj que
el sistema de buses se jerarquiza, apareciendo dos buses ms: sincronizan su funcionamiento. En los nuevos procesadores de
el bus local, y el bus de E/S. Intel desde Nehalem, y desde hace ms tiempo que estos
El primero es de longitud pequea, de alta velocidad y primeros en los AMD, se usan otros tipos de buses como el
adaptado a la arquitectura particular del sistema para Intel QuickPath Interconnet y el Hyper Transport
maximizar el ancho de banda entre el procesador y la cache, respectivamente.
aislando el trfico procesador-cache del resto de transferencias
Hyper Transport se puede encontrar tanto en equipos de AMD,
del sistema.
como de Nvidia, o Apple.
y el bus de E/S o de expansin reduce el trfico en el bus del
AMD decide incluir el controlador de memoria dentro del chip
sistema, la existencia de estos buses permite disear una amplia
y debido a esto descarga el bus de un gran trasiego de
gama de controladores de perifricos compatibles.
informacin.
III. MARCO TERICO

Debido a esto las computadoras de la plataforma PC puede ser Una computadora est constituida por el procesador, la
sistemas abiertos que admiten el incremento de funciones y la memoria y un mdulo de E/S, que se comunican entre s. En
efecto, es una red de mdulos elementales, y por consiguiente El nmero de lneas determina cuntos bits se pueden transferir
deben existir lneas para interconectar estos mdulos. El al mismo tiempo.
conjunto de lneas que conectan los diversos mdulos se
denomina estructura de interconexin. El diseo de esta Las lneas de direccin se utilizan para designar la fuente o el
estructura depender de los intercambios que deban producirse destino del dato situado en el bus de datos. La anchura del bus
entre los mdulos. Los que se necesitan son: de direcciones determina la mxima capacidad de memoria
posible en el sistema. Las lneas de direcciones generalmente se
Memoria: Recibe y enva datos. Recibe direcciones. Recibe utilizan tambin para direccionar los puertos de E/S.
seales de control (leer, escribir, temporizar).
Las lneas de control se utilizan para controlar el acceso y el uso
Mdulo de E/S: Recibe seales de control de la computadora. de las lneas de datos y de direcciones. Las seales de control
Enva las seales de control a los perifricos. Recibe transmiten tanto rdenes como informacin de temporizacin
direcciones de la computadora. Enva seales de interrupcin. entre los mdulos del sistema. Las lneas de control tpicas son:
Recibe y enva datos. E/L en memoria, peticin de interrupcin, seales de reloj.

Procesador: Lee instrucciones y datos. Escribe datos una vez En cuanto al funcionamiento del bus, si un mdulo desea enviar
los ha procesado. Enva seales de control a otras unidades. un dato a otro debe hacer dos cosas: obtener el uso del bus y
Recibe seales de interrupcin. transferir el dato a travs del bus. Si un mdulo desea pedir un
dato a otro mdulo debe obtener el uso del bus y transferir la
La estructura de interconexin debe dar cobertura a los peticin al otro mdulo mediante las lneas de control y
siguientes tipos de transferencias: direccin apropiadas.

Memoria a procesador y viceversa.


E/S a procesador y viceversa.
Memoria a E/S y viceversa.

La estructura de interconexin ms comn son las de bus y


buses mltiples.

INTERCONEXIN CON BUSES:

Un bus es un camino de comunicacin entre dos o ms


Fig. 1. Interconexin mediante un bus.
dispositivos ya que se trata de un medio de transmisin
compartido. Cualquier seal transmitida por uno de esos
dispositivos est disponible para que los otros dispositivos IV. BUSES: CONEXIN DE LOS DISPOSITIVOS DE E/S
conectados al bus puedan acceder a ella. Un bus est constituido AL PROCESADOR Y LA MEMORIA
por varios caminos de comunicacin capaces de transmitir
seales binarias representadas por 1 y por 0. El bus que conecta
En un sistema computador, cada uno de los diferentes
los componentes principales del computador se denomina bus
subsistemas debe tener interfaces con el resto. Por ejemplo, la
del sistema.
memoria y el procesador necesitan comunicarse, de la misma
ESTRUCTURA forma que necesitan comunicarse el procesador y los
dispositivos de E/S. Esto se hace habitualmente mediante un
El bus del sistema es un conjunto de conductores elctricos bus, este es un canal de comunicacin compartido, que utiliza
paralelos. Estos conductores son lneas de metal grabadas en un conjunto de cables para conectar mltiples subsistemas. Las
una tarjeta que se extiende a travs de todos los componentes dos ventajas ms importantes de la organizacin en bus son
del sistema, cada uno de los cuales se conecta a algunas o a versatilidad y bajo coste.
todas las lneas del bus. Una vez definido el sistema de conexin, se puede aadir de
Est constituido por entre 50 y 100 lneas que se pueden forma sencilla nuevos dispositivos, y los perifricos pueden
clasificar en tres grupos funcionales: lneas de datos, de pasarse incluso de un sistema a otro, si ambos usan el mismo
direcciones y de control. tipo de bus, efectivos en coste porque el conjunto de cables se
comparte de mltiples formas.
Las lneas de datos proporcionan un camino para transmitir
datos entre los mdulos del sistema. Generalmente consta de 8, La desventaja ms importante del bus es que crea un cuello de
16 o 32 lneas distintas, cuyo nmero se conoce como anchura. botella en la comunicacin, limitando la mxima productividad
de E/S. Cuando la E/S debe pasar por un bus, el ancho de banda
de este bus limita la productividad mxima de la E/S. Por ello usan para indicar que es lo que contiene el bus y para realizar
es un reto muy importante el diseo de un sistema de bus capaz el protocolo del bus. Dado que el bus es compartido, se necesita
de satisfacer los requerimientos del procesador, en los sistemas tambin un protocolo para decidir quin es el siguiente en usar
comerciales, en los que la E/S es muy frecuente, y en los el bus.
supercomputadores, donde la velocidad de la E/S debe ser muy
alta porque el rendimiento de los procesadores es alto. Consideremos una transaccin de bus tpica. Una transaccin
de bus tiene dos partes: el envi de la direccin y el envi o
recepcin de los datos. Las transacciones de bus se definen
tpicamente en funcin de la operacin que se realiza en la
memoria. Una transaccin de lectura transfiere datos de
memoria (o bien al procesador o bien a un dispositivo de E/S),
y una transaccin de escritura escribe datos en memoria.
Una operacin de entrada consiste en la entrada de datos desde
el dispositivo a la memoria, donde el procesador los habr
escrito. La figura 2 muestra los pasos tpicos de operacin de
salida, en la que se leern los datos de memoria y se enviarn
al dispositivo. Mientras que la figura 3 muestra los pasos de una
operacin de entrada en las que los datos se leen del dispositivo
y se escriben en memoria.
fig. 2. Cable bus.
V. CONEXIN DE PERIFRICOS AL COMPUTADOR
Una de las razones por las cuales el diseo de un bus es tan
difcil es que la velocidad mxima del bus est limitada por
factores fsicos, como la longitud del bus y el nmero de
dispositivos. Esto factores fsicos impiden usar el bus a
cualquier velocidad. Existen varias tcnicas para mejorar el
rendimiento del bus; sin embargo, estas tcnicas pueden afectar
negativamente a otras mtricas de rendimiento.
Por ejemplo, para obtener un tiempo de respuesta pequeo para
las operaciones de E/S, se debe minimizar el tiempo para
realizar el acceso al bus simplificando el camino de
comunicacin. Por otra parte, para mantener velocidades altas
de E/S se debe maximizar el ancho de banda del bus. El ancho
de banda del bus puede aumentarse aadiendo ms buffers y
transmitiendo bloques grandes de datos, lo cual incrementa el Fig. 3 Dispositivos perifricos.
tiempo necesario para realizar el acceso al bus.
Claramente, estos dos objetivos, acceso rpido al bus y ancho
de banda elevado, pueden producir conflictos en los Los perifricos se conectan a la CPU a travs de grupos de hilos
requerimientos de diseo. Finalmente, la necesidad de que se conoce como buses. En el interior del computador el bus
transferencia muy diferentes, contribuye a complicar an ms transmite la informacin de los datos en paralelo. El bus que
el diseo del bus. conecta la CPU con los otros elementos del procesador se
conoce como bus local o bus de la CPU. Es un bus muy rpido
Normalmente, un bus tiene un conjunto de seales de control y y conecta la CPU con las tarjetas de la placa base y los
un conjunto de seales de datos. Las seales de control se usan controladores de los dispositivos externos. Las conexiones
para sealizar peticiones y reconocimientos y para indicar que entre los perifricos y los controladores o tarjetas de la placa
tipo de informacin pasa por las lneas de datos. Esta base se realizan a travs de un bus ms general llamado bus del
afirmacin puede ser datos, ordenes complejas o direcciones. sistema. Tambin suele conectar algunas ampliaciones de
Por ejemplo, si un disco quiere escribir en memoria los datos memoria.
de un sector, las lneas de datos se usarn para indicar la
direccin de memoria en la que se deben escribir los datos del Algunos perifricos requieren un bus especializado que se
sector, y tambin para trasladar los datos del sector. Las lneas adapte a su velocidad de transferencia, sus niveles de tensin,
de control se usarn para indicar el tipo de informacin presente la naturaleza de sus seales de control y otros requerimientos.
en las lneas de datos del bus en cada instante de transferencia. A estos buses se les llama bus de entrada/salida o bus de
Algunos buses tienen dos conjuntos de seales para expansin. Por todo lo vistos, los computadores grandes al
comunicarse por separado los datos y las direcciones en una disponer de varios tipos de buses requieren de dispositivos
sola transmisin. En cualquier caso, las lneas de control se adaptadores o de interconexin entre buses. Los procesadores
suelen tener unas ranuras de expansin (6 normalmente) sobre Sin embargo, cuando el nmero de dispositivos conectados a un
la placa base que estn conectadas al bus del sistema y que bus aumenta disminuye su rendimiento. Esto es debido a dos
permiten conectar una serie de dispositivos a este bus a travs motivos fundamentales. El primero el aumento del retardo de
de tarjetas de circuito integrado y que permiten conectar varios propagacin de las seales debido al aumento de longitud de los
dispositivos a la CPU, como por ejemplo tarjetas conductores que dan soporte al bus. Esto afecta especialmente
digitalizadoras de imgenes, aceleradores grficos con FPGAs, a la propagacin encadenada de la seal de concesin del bus.
etc. El segundo el incremento de demanda de acceso que se produce
al aumentar el nmero de dispositivos conectados. Este exceso
de dispositivos puede crear un cuello de botella que haga que el
rendimiento del sistema se degrade por la espera intil que se
origina cuando tienen que realizar transferencias. Por otra parte,
las diferencias en la velocidad de operacin de los dispositivos
conectados al bus, tambin repercuten negativamente en su
rendimiento.

En efecto, los dispositivos lentos pueden ocasionar retrasos


importantes a los rpidos.

Para evitar la cada de rendimiento, el sistema de buses se


jerarquiza, apareciendo dos buses ms: el bus local, y el bus de
E/S.
Fig. 4. Conectores.

Buses locales
VI. JERARQUIA DE BUSES

Si se conecta un gran nmero de dispositivos al bus, las


prestaciones pueden disminuir. Hay dos causas principales:

1. Cuanto ms dispositivos se conectan al bus, mayor es


el retardo de propagacin.

2. El bus puede convertirse en un cuello de botella a


medida que las peticiones de transferencia acumuladas
se aproximan a la capacidad del bus. Sin embargo, este
problema se puede resolver, por ejemplo,
incrementando el bus de datos.

Por consiguiente, la mayora de las computadoras utilizan


varios buses, normalmente organizados jerrquicamente. Fig.6. Bus Local .

Bus del sistema (backplane) El bus local es de longitud pequea, de alta velocidad, y
adaptado a la arquitectura particular del sistema para maximizar
Los ordenadores antiguos utilizaban una topologa de bus el ancho de banda entre el procesador y la cach, por eso suele
nico, denominado bus del sistema o backplane, para conectar ser un bus propietario. Este bus asla el trfico procesador-cach
procesador, memoria y los mdulos de E/S, tal como la que se del resto de transferencias del sistema.
muestra en la siguiente figura:
Buses de E/S o de expansin

El bus de E/S o de expansin reduce el trfico en el bus del


sistema, de manera que el procesador puede acceder a memoria
en un fallo de cach mientras realiza una operacin de
entrada/salida.

Los buses de expansin son buses estndar o abiertos (ISA,


Fig. 5. Bus del sistema backplane.. EISA, PCI, etc.) es decir, independientes del computador y con
unas caractersticas bien definidas en el correspondiente
documento de normalizacin. La existencia de estos buses Dedicadas: estn permanentemente asignadas a una funcin o
permite disear una amplia gama de controladores de a un conjunto de componentes del computador Un ejemplo
perifricos compatibles. tpico de dedicacin funcional es el uso de lneas separadas
para direcciones y datos. Multiplexadas: pueden utilizarse para
Para conectar los buses del sistema y de expansin se requiere propsitos diferentes
un Adaptador de Bus, dispositivo que permite adaptar las
distintas propiedades de ambos buses: velocidad, carcter METODO DE ARBITRAJE
sncrono o asncrono, multiplexacin, etc.
Mtodo de arbitraje En un momento dado puede haber ms de
El proceso de jerarquizacin se puede complicar ms con otras un controlador intentando usar el bus, pero slo uno de ellos
topologas que den cabida a dispositivos de distinta velocidad. puede obtener el control y usarlo para transmitir Es necesario
De esta forma se equilibra mejor el trfico de informacin en disponer de un mtodo de arbitraje que determine quin utiliza
sistemas que operan con muchos dispositivos conectados. En la el bus. En general, los diversos mtodos de arbitraje se pueden
figura siguiente se muestra una topologa jerrquica en la que clasificar en: Centralizados Distribuidos
se contempla un bus de alta velocidad del que cuelgan dos
buses, uno de expansin para dispositivos rpidos y otro de E/S
para dispositivos lentos. TEMPORIZACION

El trmino temporizacin hace referencia a la forma en la que


se coordinan los eventos en el bus .Con temporizacin sncrona,
la presencia de un evento en el bus est determinada por una
seal de reloj Con temporizacin asncrona, la presencia de un
evento en el bus es consecuencia y depende de que se produzca
un evento previo

ANCHURA DEL BUS


La anchura de un bus es el nmero de lneas distintas que lo
componen, afecta tanto a la capacidad como al rendimiento
del sistema.

Cuanto ms ancho es el bus de datos, mayor es el nmero de


bits que se transmiten a la vez y, por tanto, mayor es el
rendimiento del sistema

Cuanto ms ancho es el bus de direcciones, mayor es el rango


de posiciones a las que se puede hacer referencia y, por tanto,
fig.7. Buses de expansin. mayor es la capacidad mxima del sistema

TIPOS DE TRANSFERENCIA DE DATOS

VII. ELEMENTOS DE DISEO DE UN BUS Un bus permite varios tipos de transferencias de datos
Todos los buses permiten transferencias de lectura y escritura

Transferencias de lectura: esclavo maestro

Transferencias de escritura: maestro esclavo

En una escritura, el maestro pone el


dato tan pronto se estabiliza la direccin y el esclavo ha podido
reconocerla

Fig. 8. Elementos de diseo de un bus. En una lectura, el esclavo pone el dato tan pronto como haya
reconocido la direccin y disponga del mismo
TIPO

Las lneas de bus se pueden dividir en dos tipos genricos:


VIII. DIRECCIONABILIDAD DE BUSES La disposicin anterior corresponde generalmente a los buses
del Sistema. Los denominados buses de entrada/salida (E/S)
Las lneas de un bus se pueden clasificar en funcin de su conectan las unidades a travs de cables.
direccionalidad:
Los principales parmetros que caracterizan un bus son:
1. Lneas unidireccionales.
Ancho de banda: velocidad de transferencia medida en
Mb/s.
Anchura del bus: nmero de lneas que lo componen.
Ancho de datos: nmero de lneas de datos.
Capacidad de conexin: nmero de unidades
conectadas al bus.

IX. PROTOCOLOS DE TRANSFERENCIA


Emisor Mltiple
1. Sncronos.

En los buses sncronos existe un reloj que gobierna todas las


actividades del bus, las cuales tienen lugar en un nmero entero
de ciclos de reloj. La transferencia propiamente dicha coincide
con uno de los flancos del reloj (el de bajada en el ejemplo de
la siguiente figura)
.

2. Lneas Bidireccionales.

Desde el punto de vista fsico un bus es un conjunto de Fig. 10. Diagrama de ciclo de reloj.
conductores elctricos paralelos dispuestos sobre una tarjeta de
circuito impreso. Los dispositivos del Sistema se conectan a En este caso se puso que el tiempo de acceso al slave es menor
travs de conectores (slots) dispuestas a intervalos regulares a de un ciclo, es decir, en cada ciclo tiene una operacin con
lo largo del bus. memoria. Los buses sncronos son rpidos, pero no tienen
capacidad para conectar unidades con velocidad de
transferencia baja o no conocida a priori.

2. Asncronos

Los buses asncronos utilizan un protocolo tipo handshaking


para comunicarse el master con el slave. En el siguiente
diagrama se presenta el dilogo de seales que tiene lugar
durante una transaccin de lectura de memoria por parte de la
Fig. 9. Buses de Sistema CPU utilizando un protocolo asncrono (handshaking) sobre un
bus que multiplexa las direcciones y los datos sobre las mismas
lneas (datos/direccin).
1) La CPU active la seal de lectura al tiempo que coloca
la direccin de la posicin a leer en las lneas
datos/direccin.
2) La Memoria detecta la activacin de lectura, lee la
direccin que hay en datos/direccin y activa la seal
de reconocimiento para indicar que ha detectado la
orden de lectura.
3) La CPU detecta la activacin de reconocimiento y en
respuesta se activa la seal de lectura y libera las lneas
de datos/direccin.
4) La memoria detecta que se ha desactivado la seal de
lectura y desactiva la seal de reconocimiento para dar
por terminada la orden de lectura. Fig. 12. Autmatas de mquinas de estado finito.
5) Cuando la memoria ha accedido al dato y lo tiene
preparado lo pone en datos/direccin y activa la seal 3. Semisncrono
de dato disponible.
6) La CPU detecta que dato disponible est activo y En los protocolos semisncronos existe, como en los sncronos,
procede a leer los datos del bus y activar seguidamente un reloj que gobierna las transferencias en el bus. Sin embargo,
la lnea de reconocimiento para indicar que ya dispone en este caso existe, adems, una seal de espera (wait) que es
activada por el slave cuando la transferencia va a durar ms de
del dato.
un ciclo de reloj. De esta forma, los dispositivos rpidos
7) La memoria al detectar la seal de reconocimiento operarn como un bus sncrono, mientras que los lentos
desactiva dato disponible y libera las lneas de alargarn la operacin el nmero de ciclos que les sea necesario.
datos/direccin.
8) Finalmente, la CPU al detectar que se desactiva dato
disponible, desactiva, a su vez, la seal de
reconocimiento, indicando que la transmisin ha
finalizado.
A partir de este momento se puede iniciar una nueva
transaccin.

Fig. 13. Diagrama de ciclo de reloj semisncronos.

4. Ciclo partido
En los buses de ciclo partido la operacin de lectura se divide en
dos transacciones no continuas de acceso al bus. La primera
Fig. 11. Diagrama de dilogo de seales. transaccin es la de peticin de lectura que realiza el master
sobre el slave. Una vez realizada la peticin el master abandona
Un bus asncrono trabaja igual que un par de mquinas de el bus. Cuando el slave dispone del dato ledo, inicia un ciclo de
bus actuando como master para enviar el dato al antiguo master,
estados finitos que se comunican de tal forma que uno de los
que ahora acta como slave.
autmatas no avanza hasta que sabe que el otro autmata ha
alcanzado un determinado estado, es decir, los dos autmatas
estn coordinados.

Los buses asncronos se escalan mejor con los cambios de


tecnologa y pueden admitir una mayor variedad de velocidades
de respuesta en los dispositivos.

Fig. 14. Diagrama de ciclo partido.


X. PROTOCOLOS DE ARBITRAJE 2. Protocolo de encadenamiento (daisy chaining) de tres
seales

La demanda para utilizar el bus en un computador puede


provenir de diferentes unidades, no solo de la CPU. Por ejemplo, Utiliza una lnea ms que el protocolo anterior, la lnea de
si el computador tiene E/S por DMA, est demandar el uso del ocupacin. Adems, la lnea de peticin no es encadenada sino
bus cuando tenga el control de la operacin con la memoria. Los compartida por todos los masters a travs de una entrada al
procesadores de E/S necesitan acceder al bus no solo para rbitro con capacidad de O-cableada.
realizar las transferencias de datos por DMA, sino tambin para Cuando un master toma el control del bus activa la lnea de
leer su programa de canal. Por supuesto, si el sistema es
ocupacin. El rbitro solo activa la lnea de concesin cuando
multiprocesador (ms de una CPU con memoria compartida) los
candidatos al uso del bus aumentan. recibe una peticin y la lnea de ocupacin est desactivada.
Como en el caso anterior, si un master recibe la concesin y no
Para garantizar que en todo momento slo una unidad acceda al ha solicitado el bus, transmite la seal al siguiente master. Un
bus, se utilizan los protocolos de arbitraje. Los protocolos de master toma el control del bus si tiene una peticin local
arbitraje organizan el uso compartido del bus, estableciendo pendiente, la lnea de ocupacin est desactivada y recibe el
prioridades cuando ms de una unidad solicita su utilizacin y flanco de subida de la seal de concesin.
garantizando, sobre todo, que el acceso al bus es realizado por
un solo master.

Existen dos grupos de protocolos de arbitraje, los centralizados


y los distribuidos. En los primeros existe una unidad de arbitraje,
el rbitro del bus, encargado de gestionar de forma centralizada
el uso del bus. El rbitro puede ser una unidad fsicamente
independiente o estar integrado en otra unidad, por ejemplo, la
CPU. Por el contrario, en los protocolos distribuidos no existe Fig. 16. Diagrama Protocolo de encadenamiento de tres seales.
ninguna unidad especial para la gestin del bus. Esta se realiza
de forma distribuida entre las unidades de acceso.
3. Protocolo de encadenamiento (daisy chaining) de
1. Protocolo de encadenamiento (daisy chaining) de dos cuatro seales
seales
Este protocolo permite simultanear el uso del bus por un master
Es el protocolo centralizado ms sencillo ya que utiliza slo dos con el proceso de arbitraje para la seleccin del master siguiente.
seales encadenadas, una de peticin del bus y otra de De esta forma, cuando el primer master abandona el bus, no se
concesin. pierde tiempo en el arbitraje para el siguiente porque ya se ha
hecho, pasando directamente el master seleccionado a realizar
El master que quiere acceder al bus activa la seal de peticin su transaccin, al tiempo que se realiza la seleccin del siguiente
(out) y los dems masters la propagan hasta el rbitro. El rbitro master. Para ello se aade una cuarta lnea al esquema anterior,
activa la seal de concesin que es propagada por los masters la lnea de reconocimiento.
que no solicitaron el acceso al bus. El master que recibe la seal
de concesin y tiene una peticin pendiente toma el control del
bus. Si un master recibe una seal de peticin mientras est
accediendo al bus, bloquea su propagacin al rbitro hasta que
finalice la utilizacin del bus.

La prioridad viene determinada por la proximidad al rbitro.


Fig. 17. Diagrama Protocolo de encadenamiento de cuatro
seales.

La lnea de reconocimiento la activa un master que solicit el


bus (activ peticin) y recibi la concesin pero la lnea de
ocupacin estaba activa (bus ocupado). Cuando el rbitro recibe
la activacin de reconocimiento inhibe su actuacin, es decir,
Fig. 15. Diagrama Protocolo de encadenamiento de dos seales. deja de atender la seal de peticin y generar la de concesin. El
master queda en espera para ocupar el bus tan pronto lo
abandone su actual usuario, que lo har desactivando la seal de
esto ocurre, el master ocupa el bus y desactiva la seal 6. Protocolo distribuido
de reconocimiento, con lo que el rbitro recupera su actuacin, En estos protocolos la responsabilidad del arbitraje no reside en
procediendo a un nuevo arbitraje entre los master solicitantes, una unidad independiente, sino que se distribuye por los
simultneamente con la operacin de transaccin en el bus. En diferentes masters conectados al bus.
la siguiente figura hemos representado el dilogo de seales
correspondiente a una ocupacin del bus por el master M1,
seguido por el arbitraje a favor de M2 mientras M1 realiza su
transaccin, y terminando con la ocupacin del bus por M2
cuando M1 finaliza:

Fig. 21. Diagrama Protocolo distribuido.

Fig. 18. Diagrama de dilogo de seales. Arbitro-I concede el bus al master Mi activando Gi si:
o Mi ha activado su lnea de peticin de bus Ri.
4. Protocolo con concesin por encuesta (polling) o La lnea de ocupacin est desactivada.
o La lnea de entrada de prioridad Pi-1 est
Este protocolo sustituye la lnea encadenada de concesin del activada.
bus por un conjunto de lneas que permiten acceder de forma Si el master Mino ha activado su lnea de peticin de
selectiva a la direccin asignada cada master sobre estas lneas. bus Ri, el Arbitro-i active la lnea de salida de prioridad
Pi.

XI. EJEMPLOS

1. Conexin de perifricos al computador.


Fig. 19. Diagrama Protocolo con concesin por encuesta.
Los perifricos se conectan a la CPU a travs de buses. En el
interior del computador el bus transmite la informacin de los
5. Protocolo con seales independientes
datos en paralelo.
Tambin denominado en estrella, utiliza una lnea de concesin
El bus que conecta la CPU con los otros elementos del
especfica para cada lnea de peticin independiente. Esta
procesador se conoce como bus local o bus de la CPU. Es un
alternativa tienen la ventaja que el rbitro puede aplicar distintos
bus muy rpido y conecta la CPU con las tarjetas de la placa
algoritmos de decisin en caso de peticiones simultaneas (FIFO,
base y los controladores de los dispositivos externos.
prioridad fija, prioridad variable). Adems, los retardos de
propagacin de las seales son pequeos en comparacin con
las anteriores alternativas. Las conexiones entre los perifricos y los controladores o
tarjetas de la placa base se realizan a travs de un bus ms
general llamado bus del sistema. Tambin suele conectar
Tiene la desventaja del nmero elevado de lneas de arbitraje
algunas ampliaciones de memoria.
(una por posible master). El nmero de master queda limitado al
nmero de lneas existentes.
Algunos perifricos requieren un bus especializado que se
adapte a su velocidad de transferencia, sus niveles de tensin,
la naturaleza de sus seales de control y otros requerimientos.
A estos buses se les llama buses de entrada/salida o bus de
expansin.

Todos los buses poseen unas especificaciones normalizadas,


como son:
- protocolos de transmisin de datos.
Fig. 20. Diagrama Protocolo con seales independientes. - velocidades y temporizacin de las transferencias
- anchuras de los sub-buses
- sistema fsico de conexin (conectores estandarizados). 1.- El microprocesador valida la direccin colocada en el bus
de direcciones activando la lnea /AS (=0).
Ejemplos de buses normalizados:
S-100 Bus (IEEE 696)
CAMAC (o IEEE 583) (Computer Automated 2.- Se efecta el ciclo, donde transcurre la transferencia.
Measurement and Control)
GPIB (o IEEE 488) (General Purpose Interface Bus)
Multibus (o IEEE 796) 3.- El dispositivo direccionado activa /DTACK (=0) indicando
ISA Bus (Industrial Standard Architecture) el fin de la transferencia, por lo que el uP desactiva /AS (=1) y
ISA AT Bus concluye el ciclo de bus.
MCA (Micro-Channel Architecture)
EISA (Extendet Industry Satandard Architecture)
Esta forma de comunicacin permite ajustar la velocidad de
SCSI (Small computer System Interface)
trabajo entre el uP y cada dispositivo conectado al sistema,
Futurebus+ (IEEE 896.1 e IEEE 896.2)
puesto que estos no tienen porque tener la misma velocidad de
USB o Bus Serie Universal
proceso.
Ejemplos de buses locales:
VL-bus, ideado por VESA para varios fabricantes
PCI (Peripheral Component Interconected), creado
para Intel
Quick-ring, propuesto por Apple XII. CONCLUSIONES
VME, IEEE 1014 (Versa Module Europe)
NuBus, o IEEE 1196 - Se puede concluir que las redes y buses de entrada y
M-bus y S-Bus, utilizados por las estaciones de SUN. salida son casi siempre estandarizadas, ya que deben
cumplir unas normas estndar para realizar su
cumplimiento con los resultados esperados, las cuales
2. Ejemplo buses asncronos. se establecen por medio de protocolos.

- Se concluye que las redes y buses de entrada y salida


El dispositivo X posee una entrada /CS (chip select) que lo no siempre son sncronas, ya que se pueden ver redes y
habilita. Entonces /CS= /DirMem + /AS, donde /DirMem es la buses con protocolos de transferencia de manera
combinacin de lneas A23 - A0 que refieren a su direccin en asncrona, semisncronas y de ciclo partido.
el mapa de memoria.

- Por medio de todos los protocolos establecidos, se


/DTACK: Data ACKnowledge - Reconocimiento de datos maneja una gran variedad de redes y buses de entrada
Lnea de entrada, activa a nivel bajo. y salida que permite trabajar con diferentes
arquitecturas y mejorar las velocidades y
temporizacin de las transferencias.
Mediante la activacin de esta lnea, el dispositivo direccionado
indica que la transferencia del dato se ha efectuado
- Si se conectan un gran nmero de dispositivos al bus,
correctamente.
las prestaciones pueden disminuir, por tanto, es
necesario el uso de varios buses que son organizados
En un ciclo de lectura, al activarse /DTACK, el uP captura el jerrquicamente.
dato del bus de datos mediante un latch y seguidamente termina
el ciclo. - El diseo de un bus es muy difcil debido a que la
velocidad mxima del bus se ve limitada debido a
factores fsicos como la longitud y el nmero de
En un ciclo de escritura, la activacin de /DTACK indica al uP dispositivos que se conectan.
que el dispositivo externo ha capturado correctamente el dato y
acto seguido termina el ciclo. - Gracias al desarrollo tecnolgico del bus de E/S o de
expansin surgieron las interconexiones punto a punto
lo cual redujo el trfico en el bus del sistema, la
Funcionamiento: existencia de este bus permiti disear una amplia
gama de controladores de perifricos compatibles hoy
en da, resolviendo el problema de ejecutar muchos
El control del bus asncrono se puede explicar de la siguiente cables paralelos a alta velocidad.
forma:
XII. REFERENCIAS [10] Estructura de Computadores, Facultad de Informtica UCM Documento
PDF.
[11]http://www.areatecnologia.com/informatica/tipos-de-buses.html
[1] William Stallings. (2005) Organizacin y Arquitectura de Computadores
[12]http://computadoras.about.com/od/conoce-procesadores/a/Que-Son-Fsb-
7 edicin, Madrid. pp.77-83.
Hypertransport-Dmi-Qpi-Y-Fdi.htm
[2] Santiago Cristobal Prez, Higinio Facchini, Daniel M. Argello. (2015) [13]Morris Pearse Educ ation 1994 Arquitectura de computadoras
Arquitectura de computadoras, Argenitna. pp.110-111. 3 edicin,Mexico.
[3] David A. Patterson, John L. Hennessy. Computer Organization and Design, [14] http://www.fdi.ucm.es/profesor/jjruz/WEB2/Temas/EC10.pdf
The hardware / Software interface pp. 582-586.
[4] https://www.ecured.cu/BUS
[5] Ampliacin de Estructura de Computadores - 3 de Ingeniera Informtica
Documento PDF.
[6] http://www.istr.unican.es/asignaturas/PTR/PTR-TEMA1-3en1.pdf
[7] http://www.upv.es/amiga/275.htm#0
[8] http://www.upv.es/amiga/278.htm
[9] M. Young, The Technical Writers Handbook. Mill Valley, CA: University
Science, 1989.

You might also like