Você está na página 1de 22

TEMA I. Buses. Asignatura: Arquitectura de Computadoras.

TEMA I. BUSES Y DISPOSITIVOS DE INTERCONEXIN.

INDICE 1.1. Introduccin. 1.2. Definicin del Bus. 1.3. Estructura del Bus. 1.4. Funcionamiento del Bus. 1.5. Elementos de Diseo. 1.6. Jerarqua de buses. 1.6.1. Arquitectura en Bus tradicional. 1.6.1.1. Ejemplos Buses de Expansin ISA, EISA, SCSI. 1.6.2. Arquitectura en Bus de Altas prestaciones. 1.6.2.1. Ejemplos de buses de altas prestaciones. PCI, VESA, AGP.

Pg - 1 -

TEMA I. Buses. Asignatura: Arquitectura de Computadoras.

1.1. Introduccin. En la asignatura de ETC de primero se estudi la estructura de una computadora, la cual, bsicamente, se compone de los siguientes tres elementos: Procesador. Memoria Unidades de E/S.

A su vez, el procesador contiene: Unidad de Control Unidad aritmtico lgica Registros y bferes de almacenamiento intermedio.

Todos estos elementos se interconectan mediante conjuntos conductores elctricos que son el soporte material de las seales elctricas. La funcin de este sistema de interconexin es la de transferir seales de control (sincronizacin, cdigos de operacin en sentido general,...) y datos (tanto operandos como resultados). Todos estos elementos, debidamente gobernados mediante programas informticos permiten la consecucin de resultados va programacin hardware. En la siguiente figura se puede ver un esquemticamente este conjunto de elementos.

Pg - 2 -

TEMA I. Buses. Asignatura: Arquitectura de Computadoras.

Las conexiones y transferencias que se pueden establecer son: De memoria a procesador. De procesador a memoria. De E/S a procesador. De procesador a E/S. De memoria a E/S y viceversa.

Cada una de estas transferencias requieren la activacin de mltiples seales:

Un computador es una mquina de estados finitos cuya misin es la de ejecutar instrucciones elementales para cada una de las cuales dispone de un hardware especfico.

Pg - 3 -

TEMA I. Buses. Asignatura: Arquitectura de Computadoras.

El diagrama de estados de dicha mquina de estados finitos sera el siguiente:

Cada elemento de este diagrama conlleva transferencias de informacin entre las diferentes unidades funcionales as como activaciones y desactivaciones de seales de control y sincronizacin. 1.2. Definicin. Un bus es un mecanismo de interconexin entre las distintas unidades funcionales de las que se compone un dispositivo digital. Lo ms caracterstico es que es un medio de transmisin compartido. No responde nicamente al establecimiento de un camino fsico, sino que adems conlleva una poltica de uso y acceso por parte de todos y cada uno de los elementos conectados a l. Habitualmente un bus est compuesto de varias lneas dnde cada lnea es capaz de transmitir seales binarias representando 1 0. Si se transmiten varios bits simultneamente por diferentes lneas se dice que es una transmisin paralela. Bsicamente los elementos que definen un BUS y que permite distinguir fcilmente unos de otros son: El arbitraje o mtodo de obtencin de permiso para acceder al medio. La temporizacin o mtodo de sincronizacin. La anchura del bus o nmero de bits o lneas de direcciones y datos.

Pg - 4 -

TEMA I. Buses. Asignatura: Arquitectura de Computadoras.

Los computadores actuales llevan varios tipos de buses, siendo el principal de ellos el denominado Bus del sistema que conecta el procesador con la memoria y con los mdulos de E/S. De aqu en adelante llamaremos maestro a que inicia una transferencia o comunicacin entre dos dispositivos y, llamaremos esclavo al dispositivo objeto de la transferencia. 1.3 Estructura. EL bus del sistema est constituido entre 50 y 100 lneas. Cada lnea tiene un significado particular. Generalmente se subdividen en tres grupos: Lneas de datos.(Anchura del Bus: 8, 16, 32). Lneas de direccin (Tanto para memoria como para E/S).(Anchura 8, 16, 32) Lneas de control.

Seales tpicas de control: Escritura en memoria. Lectura en memoria. Escritura E/S. Lectura E/S. Transferencia reconocida (ACK). Peticin de Bus. (Bus Request). Cesin del BUS (Grant) Peticin de interrupcin. Interrupcin reconocida. Reloj. Reset. La arquitectura de bus nico se queda insuficiente debido a que cada vez son ms los dispositivos conectados al computador y la mayor demanda de velocidad de transmisin en la comunicacin entre ellos. La descentralizacin en distintos buses de diferentes caractersticas permite un uso ms racional del BUS.

Pg - 5 -

TEMA I. Buses. Asignatura: Arquitectura de Computadoras.

La conexin fsica:

1.4 Funcionamiento del BUS. En general, si un mdulo desea enviar o recibir informacin de otro debe: Escritura/Lectura Obtener el derecho a hacer uso del bus. Avisar al elemento destino de sus intenciones. Transferir/recibir el dato Liberar el bus.

Uno de los dos elementos se denomina Maestro (Master), generalmente asociado al que inicia la transaccin aunque no necesariamente, pues esta funcin la puede centralizar algn tipo de circuito controlador, y el otro elemento se denomina esclavo (slave) asociado al que recibe rdenes. Ejemplo: De escritura. Maestro 1. Enva solicitud para disponer del BUS. 2. Consigue el derecho de uso. El Bus inhabilita cualquer otro uso del mismo. 3. Coloca direcciones y quiz datos.

Esclavo

4. Esclavo queda seleccionado despus de que se estabilicen las seales de direccin. 5. Indica la transferencia de datos. 6. Toma los datos estabilizados en el bus. 7. Confirma la toma de datos (Ack) 8. Recibe el ACK y libera el BUS

Pg - 6 -

TEMA I. Buses. Asignatura: Arquitectura de Computadoras.

1.5 Elementos de Diseo de un BUS. A la hora de disear un bus, o a la hora de analizarlo, hay varios aspectos a tener en cuenta como son: Tipo de uso del bus. Ancho del Bus. Tipos de transferencias de datos. Temporizacin. Arbitraje. Tipo de Conexin. Multiplexada: Cuando el tipo de informacin que transportan las lneas no es siempre el mismo. Por ejemplo, unas veces lleva datos y otras veces, la mismas lneas llevan direcciones. No Multiplexadas: O bien, se dispone de buses diferentes para direcciones y datos, o bien, dentro del propio bus hay lneas dedicadas a direcciones y datos. Ancho del Bus. La anchura del bus afecta de diferente manera segn sea el de direcciones o datos. Cuanto mayor es el bus de direcciones, es decir, ms bits de direcciones pueden ser transferidos simultneamente, mayor es el nmero de direcciones accesible en memoria o en dispositivos de E/S. En cuanto al bus de datos, cuanto mayor es el bus de datos, datos ms grandes pueden ser transferidos o se pueden transferir varios datos independientes simultneamente pero que estn contiguos en memoria. Esto produce un aumento de velocidad por que disminuyen los accesos a memoria, tato para recuperar datos como instrucciones. Tipos de transferencias. Hay varios tipos de transferencias que se pueden llevar a cabo a travs de un bus, podemos clasificarlas de acuerdo a varios criterios: A. Segn el tipo de operacin: De lectura o de escritura. Si el bus estuviera multiplexado, entonces habra de especificarse primero la direccin y luego el dato. B. Segn el nmero de operaciones a efectuar. Transferencia simple. (Lectura o escritura de un solo dato). Operacin Combinada. o Lectura para modificacin. Posibilidad de escritura. (Read for updating) o Lectura-Escritura-Lectura Transferencia por bloques. Transferencia secuencial.
Pg - 7 -

TEMA I. Buses. Asignatura: Arquitectura de Computadoras.

Temporizacin. Consiste en las diferentes estrategias de sincronismo entre dispositivos para establecer las transferencias de informacin. Temporizacin sncrona: todas las transferencias ocurren sincronizadas por los flancos de la seal de reloj que llegan a todos los dispositivos, ya sean maestros o esclavos.

MAESTRO

ESCLAVO

Ventajas: es simple de implementar, no requiere circuitera de control adicional y es barato. Sirve para interconectar dispositivos comparables. La desventaja es que siempre se va a la velocidad del ms lento. Temporizacin asncrona. Se basa en protocolos de interbloqueo (handshaking o interlocking) que no precisan la existencia de una seal de reloj. (Un evento origina el siguiente, y as sucesivamente).

MAESTRO

ESCLAVO

Es ms difcil de implementar pero permite adaptar las velocidades de transmisin de las diferentes tecnologas.

Pg - 8 -

TEMA I. Buses. Asignatura: Arquitectura de Computadoras.

Bus de ciclo completo o de ciclo partido: An existe una posibilidad ms. En el ciclo completo, el bus est ocupado hasta que finaliza completamente la transferencia de datos. Ahora bien, si la latencia es larga, es decir, pasan varias ranuras de tiempo (Time slots) ciclos hasta que los datos estn disponibles o hasta que los dispositivos reaccionan. Existe la posibilidad alternativa del ciclo partido. En estos casos, mientras dura la latencia, es posible realizar otros usos del bus por parte de otros maestros y esclavos. Esto hace que se aproveche mejor el ancho de banda. Es til en coherencia de cachs en sistemas multiprocesadores grandes. Arbitraje. El arbitraje es la poltica de asignacin del bus en caso de que varios dispositivos compitan por su uso. Hay dos tipos generales de abitraje: centralizado o distribuido, segn se realice por un mdulo central o cada mdulo tenga una lgica de arbitraje incorporada. a) Arbitraje centralizado. Pongamos por ejemplo el arbitraje denominado Daisy-Chain:
Bus Grant Maestro 1 Bus Request Bus Busy Maestro 2 Maestro n

Arbitraje Centralizado

1. Un maestro que desea usar el bus activa la seal comn de peticin de bus si observa que el bus no est ocupado.. 2. El rbitro activa la seal de bus ocupado. 3. El rbitro concede el bus al maestro 1. 4. Si este no lo necesita se la pasa al siguiente, y as sucesivamente hasta que llega al que solicit el Bus. 5. Al terminarse se desactiva esta seal de peticin de bus, lo que hace que el arbitro desactive la seal de concesin y la de bus ocupado. Ventajas: Sencillez: Podemos aadir nuevos maestros aadindolos a la cadena donde queramos.

Pg - 9 -

TEMA I. Buses. Asignatura: Arquitectura de Computadoras.

Desventajas: La prioridad es fija, no es criterio justo. La propagacin de seales es lenta. Si un maestro casca, los de menor prioridad a este no tendran acceso al bus, a no ser que queden puenteadas las seales correspondientes de peticin de bus y concesin de bus. Una alternativa viene dada por el siguiente esquema:

BR1 B G1

Maestro 1

Maestro 2

Maestro n

Arbitraje Centralizado

BR2

B G2

BRn B Gn

En este caso, un dispositivo hace el arbitraje activando seales de control directas sobre los diferentes maestros. Son lneas dedicadas de peticin /concesin de bus a cada mdulo maestro. El arbitraje lo realiza un mdulo central que puede elegir el tipo de poltica de asignacin de bus que queramos (basado en prioridades, en velocidad de transmisin, en reparto de carga....). Esta tcnica es ms flexible en cuanto a la poltica de asignacin del bus y emplea menor tiempo en el arbitraje, sin embargo requiere el uso de ms lneas y hay una mayor limitacin en el nmero de dispositivos que se pueden conectar al BUS. b) Arbitraje distribuido. Cada mdulo tiene un rbitro y un nmero de arbitraje nico. Siempre tiene prioridad aquel con un nmero de arbitraje ms alto.

Maestro 1.

Maestro 2.

Maestro n.

BG Arbitro 1

BG Arbitro 2 Nm de Arbitraje Nm de Arbitraje

BG Arbitro n Nm de Arbitraje

Bus Ocupado

Pg - 10 -

TEMA I. Buses. Asignatura: Arquitectura de Computadoras.

Funcionamiento: Todos los maestros que quieren el bus envan su nmero de arbitraje a las lneas comunes de peticin concesin de Bus (SBRG) del bus de arbitraje a travs de sus respectivos rbitros, la seal de cada lnea es la OR de todas las de los maestros. Si un mdulo detecta a 1 una lnea de mayor peso que la del mayor de sus 1, eso quiere decir que hay otro dispositivo ms prioritario que quiere el uso del bus. El mdulo retira entonces todos los 1 menos significativos que el detectado. De este modo, el mdulo con el nmero de arbitraje ms alto encontrar su nmero en las lneas SBRG, lo que indica que el ganador es l y coger el bus cuando finalice la transaccin que est en ese momento en curso. Este tipo de arbitraje se emplea en Multibus II y Futurebus +. c) Arbitraje mixto centralizado/distribuido. Aun cabe una tercera posibilidad. Arbitrar centralizadamente varias lneas de maestros o mdulos E/S que en cada lnea tienen un arbitraje distribuido. O al revs. Este tipo de arbitraje mixto es habitual en mainframes con canales de E/S donde se conectan bateras de discos, terminales etc. 1.6 JERARQUA Las prestaciones del bus vienen en gran medida determinadas por el ancho del bus y la velocidad del reloj que controla las transferencias. Ambos aspectos tienen limitaciones de tipo tecnolgico y econmico. Ahora bien, existen otros aspectos ms de ndole de diseo que son los que ms nos interesan, en tanto en cuanto, podemos fcilmente modificarlos. En primer lugar, hay un retardo de propagacin en el bus a medida que aumenta la longitud del mismo. o Ej.: Veloc. Luz = 300.000 km/s. Es decir, en 1 ns recorre 30 cm. Adems, ms tiempo consumido en circuitos de conmutacin. En segundo lugar, la conexin de muchos dispositivos compitiendo por el uso del bus hace que aumenten los tiempos de contencin. Dando lugar a un ancho de banda efectivo inferior al disponible fsicamente segn las especificaciones. Estos problemas se pueden solventar mediante el uso de varios buses interconectados de forma jerrquica y con diferentes anchos de banda y/o velocidades de transferencia. A travs de Bridges se pueden conectar buses de diferentes anchos de banda.

Pg - 11 -

TEMA I. Buses. Asignatura: Arquitectura de Computadoras.

De esta forma habr buses para dispositivos lentos, buses para dispositivos rpidos y buses especializados (como los utilizados para conectar aceleradores de grficos). A continuacin se describen los buses genricos presentes en las jerarquas. 1. Bus Local. Es el que interconecta el procesador (Unidad de control, unidad aritmtico lgica y registros) con la memoria cach del procesador (Cach de Nivel 1), y un controlador local de E/S. 2. Bus del Sistema. Permite conectar la Memoria principal a la Cach de nivel 1. Adems se conecta con el adaptador para el bus de expansin. 3. Bus expansin. Se utiliza para conecta los dispositivos perifricos al bus del sistema. 4. Bus de alta velocidad. No est presente en todas las arquitecturas. Slo en las de altas prestaciones. Permite conectar dispositivos de alta velocidad al bus del sistema a travs de la cach. Esta jerarqua da lugar a dos posibles configuraciones: 1.6.1 Arquitectura en bus tradicional: Consta de un bus local, un bus del sistema y un bus de expansin. El controlador de memoria cach permite conectar la cach al bus del sistema y al bus local adecuando velocidades. El bus del sistema puede estar a su vez conectado a un bus de expansin mediante una interfaz. El bus de expansin es el bus al que se conectan los dispositivos perifricos. El bus de expansin es en s un avance importante al permitir paralelizar operaciones de E/S con Memoria principal, con el funcionamiento independiente del procesador y su cach.

Pg - 12 -

TEMA I. Buses. Asignatura: Arquitectura de Computadoras.

Ejemplos de Buses de expansin tenemos los BUSES: ISA (Industrial Standard Arquitecture): Introducido por IBM. De 8 y 16 bits con velocidades de 4,17 y 8,33 MHz. Respectivamente. EISA (Extended ISA): Aparecin en los aos 88-89 para mejorar las prestaciones del BUS ISA.to 16/32-bit 24/32-bit de direcciones 8.33 MHz Permite ms canales de interrupcin por DMA SCSI (Small Computer System Interface): Mencin especial requiere el bus Small Computer System Interface (SCSI): Diseado por Apple in 1984 Es la interfaz con una amplia variedad de dispositivos perifricos de alta velocidad. Generalmente discos. Ms que un bus es un mecanismo daisy-chain con arbitraje distribuido del tipo autoseleccin Idneo para perifricos con pocos accesos pero de gran volumen de datos en cada operacin de entrada salida. La temporizacin puede ser sncrona o asncrona. Nmero mltiple de maestros. Longitud mxima: 25 m. Tenemos dos tipos: SCSI-1 Ancho de bus de 8-bit . Multiplexado para direcciones. Reloj de 5 MHz clock Tasa de transmisin of 5 MB/s Soporta hasta 7 dispositivos conectados. SCSI-2 Estndar actual Ancho de bus de 16 o 32 bits Reloj a 10 MHz. 40 MB/s. Hasta 31 dispositivos conectados. 1.6.2 Arquitectura en BUS de altas prestaciones. La arquitectura en bus tradicional se muestra deficiente cuando se conectan perifricos de alta velocidad. Este bus se hace cargo de las transferencias de ms alta velocidad dejando las transferencias ms lentas al bus de expansin.

Pg - 13 -

TEMA I. Buses. Asignatura: Arquitectura de Computadoras.

Ejemplos de buses de altas prestaciones son los siguientes: BUS PCI (Peripheral component Interconnect). Se puede incorporar como bus de altas prestaciones en arquitecturas para ordenadores de sobremesa, o como bus de expansin de perifricos en arquitecturas para servidores. Es decir, permite varias configuraciones y usos diferentes. Suele ir montado en la placa base. Fue ideado por INTEL en 1990. En su primera versin, algunas de sus caractersticas fueron: 64 lneas de datos Multiplexadas con direcciones. 33MHz. Velocidad de transferencia de 264 Mbytes/s. Temporizacin sncrona. Gestin de prioridades centralizado. Con estrategias FIFO o Round-Robin (Cclico). Permite la conexin de varios maestros. Permite la interconexin de varios procesadores al mismo BUS. Se pueden conectar hasta 32 dispositivos. Aunque cada uno de esos dispositivos puede ser un Bus PCI, en este caso se puede llegar a montar hasta 1024 dispositivos. Longitud Mxima: 0,5m.

Sin embargo, la versin ms moderna tiene las siguientes especificaciones: 32 64 lneas para datos, tambin multiplexadas para direcciones. 66 MHz Velocidad de Transferencia de 528 MB/s 4.224 Gb/s. El resto coincide con la versin anterior.
Pg - 14 -

TEMA I. Buses. Asignatura: Arquitectura de Computadoras.

La siguiente figura muestra dos configuraciones diferentes para este BUS:

Los adaptadores funcionan como bferes de modo que se puedan ajustar las diferentes velocidades de dispositivos entre ellos y, sobre todo, con la memoria y el procesador. Estructura del BUS PCI. Lneas , terminales o conexiones Obligatorias. Lneas de sistema: o CLK. Reloj. Hasta 66 MHz. o RST#. Reset.

Pg - 15 -

TEMA I. Buses. Asignatura: Arquitectura de Computadoras.

Conexiones o terminales de direcciones y datos: o AD[31..0]. Lneas multiplexadas para direcciones y datos o C/BE[3:0]#. Seales multiplexadas para rdenes a travs del BUS y Byte Enable durante la transferencia de datos. Las lneas indican cual de los cuatro grupos de lneas de bytes transportan informacin vlida. Esto permite adaptarse a los diferentes anchos de palabra de los diferentes procesadores y mdulos de entrada/salida. o PAR. Propociona un bit de paridad para las lneas AD y C/BE. Es proporcionada por el maestro para las fases de direccin y escritura de datos y, sin embargo, la proporciona el esclavo en caso de lectura. Lneas de control de interfaz. o Frame#. Suministrada por el maestro para indicar el comienzo de una transferencia. La activa al comienzo y la desactiva cuando el maestro est preparado para el final de la fase de datos. o IRDY#. (Initiator Ready). La proporciona el maestro cuando est listo para leer o cuando ha dejado datos vlidos en el bus para escribir. o TRDY#. (Target Ready). La proporciona el esclavo cuando en una operacin de lectura ha dejado datos vlidos en el bus o en una de escritura cuando est preparado para recibir los datos. o STOP#. Indica que el dispositivo seleccionado desea que el maestro pare la transaccin actual. o IDSEL. (Initialization device select). Usada como seal de seleccin de circuito (chip select) durante lecturas y escrituras de configuracin. Lo pone a 1 el maestro. o DEVSEL#. (Device Select). Selector de dispositivo. Activada por el dispositivo seleccionado cuando ha detectado su seleccin. Lneas de arbitraje. o REQ#. Indica al rbitro que el dispositivo correspondiente solicita usar el bus. Hay una lnea punto a punto para cada dispositivo. o GNT#. Indica al dispositivo que el rbitro le ha cedido el bus. Hay una lnea punto a punto por cada dispositivo. Lneas de error. o PERR#. Error de paridad. Indica que se ha detectado un error de paridad en los datos por parte del esclavo en caso de escritura o por parte del maestro en caso de lectura. En definitiva, el receptor de los datos es el que puede analizar la paridad. o SERR#. Error del sistema. La puede activar cualquier dispositivo por errores de paridad o cualquier tipo de error. Lneas opcionales. Lneas de interrupcin: o INTA(B/C/D)#. Lneas de peticin de interrupcin. Se emplea una generalmente, salvo que el dispositivo pueda generar diferentes clases de interrupciones dependiendo de la funcionalidad. Lneas de soporte de Cach: o SBO#. (Snoop Backoff). Indica un acceso a una lnea de cach modificada.

Pg - 16 -

TEMA I. Buses. Asignatura: Arquitectura de Computadoras.

o SDONE. (Snoop Done). Indica el estado del mdulo de sondeo del bus (snoop). Se activa cuando el sonde ha finalizado. Lneas de extension de bus a 64 bits. o AD[63..32]. Lneas multiplexadas para direcciones y datos. o C/BE[7..4]# Lneas multiplexadas de rdenes y habilitacin de byte. Durante la fase de direccin, estas lneas proporcionan las rdenes adicionales del bus. Durante la fase de datos, las lneas indican cul de los cuatro bytes del bus ampliado contiene los datos vlidos. o REQ64#. Utilizada para pedir una transferencia de 64 bits. o ACK64#. El dispositivo seleccionado est dispuesto a realizar la transferencia con 64 bits. o PAR64. Proporciona paridad par para las lneas ampliadas AD y C/BE pero un ciclo de reloj despus. Terminales de Test. (JTAG/Boundary Scan Pins). o TCK. Reloj de test. Utilizado para sincronizar las operaciones de entrada/salida de test de estado. o TDI. Entrada de test utilizada para introducir bit a bit los datos y las instrucciones de test en el dispositivo a testear. o TDO. Salida test. Utilizada para obtener bit a bit la salida del test. o TMS. Selector modo test. o TRST#. Reset de test para iniciarlo. rdenes del PCI. Cuando un maestro adquiere el BUS, entonces indica el tipo de transferencia que va a realizar. Durante la fase de direccionamiento de transferencia se utilizan las lneas C/BE para indica el tipo de transferencia. Los tipos de transferencia son: o Reconocimiento de interrupcin. Realizada por el controlador de interrupciones.. o Ciclo especial. Difusin de mensajes. o Lectura E/S o Escritura de E/S o Lectura de memoria o Lectura de lnea de memoria o Lectura mltiple de memoria o Escritura en memoria o Escritura e invalidacin en memoria o Lectura de configuracin o Escritura de configuracin o Ciclo de direccin dual. Direcciones usando 64 bits. Ejemplo de transferencia de datos. La transferencia de datos en PCI es una transaccin nica, es decir, no emplea ciclo partido. Consta de una fase de direccionamiento y una fase o ms de datos.

Pg - 17 -

TEMA I. Buses. Asignatura: Arquitectura de Computadoras.

Todos los eventos se sincronizan con la seal de bajada de reloj, cosa que sucede a la mitad de ciclo de reloj. Los dispositivos interpretan las lneas del bus en los flancos de subida de cada ciclo de bus. a) Una vez que el maestro recibe el control del BUS activa FRAME. Esta seal permanece activa hasta que el maestro est dispuesto para la ltima fase de los datos. Simultneamente sitala direccin en el bus de direcciones y la orden de lectura (en este caso) en las lneas C/BE. b) Al comienzo del ciclo 2 el dispositivo destino se identifica en las direcciones AD. c) El maestro deja libres las lneas AD. En todas las lneas que pueden ser activadas por ms de un dispositivo, se necesita un ciclo libre de cambio. El maestro cambia las lneas C/BE para indicar que byte de las lneas AD va a llevar el dato. Tambin el maestro activa IRDY para indicar qe est preparado para recibir el dato. d) El dispositivo de lectura activa DEVSEL para indicar que ha reconocido la direccin como suya y va a responder. Sita el dato en las lneas AD y activa TRDY par indicar que hay un dato vlido en el bus. e) El maestro lee el dato al comienzo del ciclo de reloj 4 y cambia las lneas de habilitacin de Byte segn se necesite para cada lectura. f) En este ejemplo el dispositivo desactiva TRDY para indicar que en el siguiente ciclo no va a enviar un nuevo dato pues necesita tiempo para prepararlo. g) Durante el siguiente ciclo (ciclo 6) el dispositivo de lectura sita el tercer dato en el bus. No obstante el maestro no est listo, por lo cual desactiva IRDY. Esto har que el dispositivo de lectura mantenga el dato en el bus durante un ciclo extra. h) El maestro sabe que el tercer dato serel ltimo por lo que desactiva FRAME y activa IRDY para recibir el ltimo dato. i) El maestro desactiva IRDY y el dispositivo desactiva TRDY y DEVSEL.

Pg - 18 -

TEMA I. Buses. Asignatura: Arquitectura de Computadoras.

Arbitraje. EL arbitrje es centralizado y sncrono donde cada maestro tiene una lnea de Grant y otra de Request. El algoritmo de asignacin puede ser FIFO o cclico o cualquier clase de criterio de prioridad.

Un posible modo de funcionamiento sera el siguiente: a) En algn momento anterior al ciclo de reloj 1, A activa sus seal REQ. El rbitro muestrea esta seal al comienzo del ciclo 1. b) Durante el ciclo de reloj 1 , B solicita el BUS. c) Al mismo tiempo, el arbitro activa GNT-A para ceder el bus a A. d) Al comienzo del ciclo 2, el maestro A muestrea su GNT-A, de lo cual deduce que es el siguiente a usar el BUS. Como IRDY ,TRDY y FRAME estn desactivados, activa FRAME y coloca la informacin de direccin en el bus de direcciones, y la orden correspondiente en las lneas C/BE. Adems mantiene activa REQ-A, para realizar otra transferencia despus de la actual.
Pg - 19 -

TEMA I. Buses. Asignatura: Arquitectura de Computadoras.

e) El rbitro, al comienzo del ciclo 3 muestrea todas las GNT y decide ceder el BUS a B activando GNT-B y desactivando GNT-A. Pero B no puede usar el BUS hasta que no est libre. f) A desactiva FRAME para indicar que su ltima transferencia est en marcha. Pone los datos en el bus de datos y se lo indica mediante IRDY al destino. El dispositivo lee el dato al siguiente ciclo. g) Al comienzo del ciclo 5, B encuentra IRDY y FRAME desactivados , toma el control activando FRAME y desactivando REQ-B.

Est realizando un arbitraje oculto o solapado (hidden arbitration).

VESA Video Local Bus (Video Electronics Standard Association) Proporciona accesos de alta velocidad a memoria dispositivos grficos mediante accesos DMA. Implementado en conjuncin con ISA o EISA. 32/64 bits de datos. 24/32 bits de direcciones. Velocidad equivalente a la de la CPU.

Pg - 20 -

TEMA I. Buses. Asignatura: Arquitectura de Computadoras.

AGP. (Acelerator Graphic Port)

Permite hacer uso del BUS de altas prestaciones PCI al mximo caudal cuando las tarjetas aceleradoras de grficos intercambian datos con la memoria.

Pg - 21 -

TEMA I. Buses. Asignatura: Arquitectura de Computadoras.

EJERCICIOS DE BUSES.
1) a) Calcular la frecuencia MHz mnima que debera tener un bus 32 bits que conectase la tarjeta grfica para un monitor color que tiene una resolucin de 1024x768, que emplea 12 bits por pxel, que tiene una frecuencia de refresco de 32 Hz. b) Mismo ejercicio pero con una tarjeta True Color (24 bits por pxel) y un bus de 64 bits. Calcula la velocidad de transferencia sostenida de un bus PCI de 66MHz cuando utiliza 32 bits y cuando utiliza 64 bits. Lo mismo para un bus SCSI de 32 lneas y 10MHz. Tenemos un microprocesador de 32 bits, con un bus externo de 16 bits, y con una entrada de reloj de 8 MHz. Asuma que el procesador tiene un ciclo de bus cuya duracin mnima es igual a cuatro ciclos de reloj. a) Cul es la velocidad de transferencia mxima que puede sostener el procesador? b) Aporta algunas ideas que permitan doblar la velocidad de transferencia. Suponga un sistema con las siguientes caractersticas: a) Un sistema de memoria y de bus que soporta accesos a bloques de entre 4 y 16 palabras de 32 bits. b) Un bus sncrono de 64 bits a 200 MHz, en el que una transferencia de 64 bits requiere un ciclo de reloj. c) El envo de la direccin a memoria tambin requiere un ciclo de reloj. d) Se necesitan dos ciclos de reloj entre dos operaciones de transferencia de bloques en el bus. e) El tiempo de acceso a memoria de las 4 primeras palabras es de 200 ns; cada grupo adicional de cuatro palabras se lee en 20 ns. Considere que las transferencias se pueden solapar con las lecturas.

2) 3) 4)

5)

Encuentre el ancho de banda sostenido y la latencia para la lectura de 256 palabras en el caso de trasferencias de bloques de 4 palabras y en el caso de transferencias de bloques de 16 palabras. Calcule tambin el nmero de transacciones de bus por segundo, en cada uno de los casos. Recuerde que una transaccin de bus consiste en la transmisin de la direccin seguida de los datos. 6) Se desea comparar los anchos de banda mximos de un bus sncrono y otro asncrono. El bus sncrono tiene un tiempo de ciclo de reloj de 50 ns, y cada transaccin de bus requiere un ciclo de reloj. El bus asncrono requiere 40 ns para el protocolo de handshaking. En ambos buses la seccin de datos contiene 32 bits. Encuentre el ancho de banda sostenido de ambos buses cuando realizan lecturas sobre una memoria de 200 ns. Suponga que la lecturas son de una nica palabra. 7) Considere una mquina con palabras de 48 bits, un disco de 107 bps, y un tiempo de ciclo de memoria principal de 600 ns. Asuma que cada transmisin a travs del bus requiere 750 ns para los bit de datos y algunas operaciones de intercambio de seales de control de conformidad (handshaking). Cuntos bits tendran que enviarse en cada perodo de 750 ns para ajustarse a la velocidad de transferencia del disco? Qu fraccin del ancho de banda de memoria principal consume una operacin de entrada salida de disco?

8) Dibuja un cronograma para una operacin de escritura en un bus PCI.

Pg - 22 -

Você também pode gostar