busesdeinterconexin 151114034209 lva1 app6892

Upload: jhonsey2000

Post on 09-Mar-2016

217 views

Category:

Documents


0 download

DESCRIPTION

diferentes conexiones de redes en formato pdf

TRANSCRIPT

  • Autor:Bravo Cordova VeKIN Xiomara

    Gmail: [email protected] de interconexin

  • *Estructura del temaIntroduccinGeneralidades: el bus del sistemaEstructuraJerarquas de buses mltiplesElementos de diseo de un busEstudio de caso: el bus PCIEstructurardenesTransferencia de datosArbitraje

  • *BusesUn bus es un camino de comunicacin compartido entre dos o ms dispositivos

    Cualquier seal transmitida estar disponible para todos los dems dispositivosSlo un dispositivo puede transmitir en un momento dadoSi dos dispositivos transmiten al mismo tiempo, sus seales se solaparn y, probablemente, se distorsionarnLos dispositivos deben obtener el control del bus antes de poder utilizarlo para transferir informacin[STALLINGS 3.4]

  • *Lneas de comunicacinUn bus suele estar formado por varias lneas de comunicacinCada lnea tiene un significado o funcin particularFsicamente, las lneas de comunicacin no son sino un conjunto de conductores elctricos

    Cada lnea transmite seales digitales binarias (0,1)Se puede transmitir una secuencia de dgitos binarios a travs de una nica lnea durante un intervalo de tiempoSe pueden utilizar varias lneas del bus para transmitir dgitos binarios simultneamente en paralelo[STALLINGS 3.4]

  • *Estructura del temaIntroduccinGeneralidades: el bus del sistemaEstructuraJerarquas de buses mltiplesElementos de diseo de un busEstudio de caso: el bus PCIEstructurardenesTransferencia de datosArbitraje

  • *El bus del sistemaLos computadores poseen diferentes tipos de buses que proporcionan comunicacin a distintos niveles entre sus componentesEl bus que conecta los componentes principales del computador (procesador, memoria y E/S) es el llamado bus del sistema[STALLINGS 3.4]

  • *Estructura del temaIntroduccinGeneralidades: el bus del sistemaEstructuraJerarquas de buses mltiplesElementos de diseo de un busEstudio de caso: el bus PCIEstructurardenesTransferencia de datosArbitraje

  • *Estructura del bus del sistemaAunque existen diseos muy diversos, las lneas que forman el bus del sistema pueden clasificarse en tres grupos funcionales: datos, direccin y controlTambin pueden existir lneas de alimentacin para suministrar energa a los mdulos conectados al bus[STALLINGS 3.4]

  • *Lneas de datosLas lneas de datos proporcionan un camino para transmitir datos entre los mdulos del sistema

    El conjunto de las lneas de datos suele denominarse bus de datosSe suele hablar de anchura del bus para referirse al nmero de lneas de datosLa anchura del bus de datos es un factor clave para determinar el rendimiento de un sistemaCada lnea puede transportar un nico bit cada vezLa anchura del bus determina cuantos bits se puden transmitir de forma simultnea y, por tanto, la velocidad de transferencia[STALLINGS 3.4]

  • *Lneas de direccinLas lneas de direccin se utilizan para designar la fuente o el destino del dato situado en el bus de datosPosicin de memoriaDispositivo de E/S

    La anchura del bus de direcciones determina el tamao mximo del espacio de direcciones del sistemaCuando la E/S est asignada en memoria, el espacio de direcciones se comparte entre memoria y E/SCuando la E/S est aislada de memoria, los espacios de direcciones estn separados y tienen el mismo tamao mximo[STALLINGS 3.4][STALLINGS 7.3]

  • *Lneas de controlDado que las lneas de datos y direcciones son compartidas por todos los dispositivos conectados al bus, debe existir alguna forma de controlar su uso

    El propsito de las lneas de control es:Determinar quien accede a las lneas de datos y direccionesGestionar el uso que se hace de esas lneasTransmitir rdenes que especifican las operaciones a realizarTransmitir informacin de temporizacin que indica la validez de los datos y direcciones[STALLINGS 3.4]

  • *Algunas lneas de control tpicasEscritura en memoria: hace que el dato presente en el bus se escriba en la posicin direccionadaLectura de memoria: hace que el dato de la posicin direccionada se site en el busEscritura de E/S: hace que el dato presente en el bus se transfiera a travs del puerto de E/S direccionadoLectura de E/S: hace que el dato presente en el puerto de E/S direccionado se site en el busTransferencia reconocida: indica a un dispositivo que el dato que envi ha sido aceptado o que el dato que desea est disponible en el bus[STALLINGS 3.4]

  • *Algunas lneas de control tpicasPeticin de bus: indica que un dispositivo necesita disponer del control del busCesin de bus: indica que se cede el control del bus a un dispositivo que lo haba solicitadoPeticin de interrupcin: indica que hay una interrupcin pendienteInterrupcin reconocida: seala que la interrupcin pendiente ha sido aceptadaReloj: se utiliza para sincronizar operacionesReinicio: devuelve los dispositivos conectados a su estado inicial[STALLINGS 3.4]

  • *Estructura fsicaEl bus del sistema se extiende a traves de todos los componentes del sistema, cada uno de los cuales se conecta a algunas o a todas las lneas del bus

    Una organizacin clsica consiste en una distribucin longitudinal a lo largo de la que se distribuyen ranuras de conexin (slots) a intervalos regulares[STALLINGS 3.4]

  • *Estructura fsicaEl sistema completo se introduce dentro de un chasis que tambin contiene la fuente de alimentacin, algunos dispositivos perifricos, etc

    Cada uno de los componentes principales del sistema ocupa una o varias tarjetas que se conectan al bus a travs de las ranuras de conexin[STALLINGS 3.4]

  • *Estructura fsicaEsta disposicin es muy prctica porque permite expandir el sistema aadiendo nuevas tarjetas o actualizarlo/repararlo sustituyendo tarjetas

    No obstante, los sistemas actuales tienden a tener sus componentes principales en una misma tarjetaEl procesador, la memoria cach y el bus que los comunica se integran en un nico componenteLa memoria y otros dispositivos siguen estando en tarjetas separadas que se comunican con el procesador por medio del bus del sistema[STALLINGS 3.4]

  • *Estructura del temaIntroduccinGeneralidades: el bus del sistemaEstructura del busJerarquas de buses mltiplesElementos de diseo de un busEstudio de caso: el bus PCIEstructurardenesTransferencia de datosArbitraje

  • *Inconvenientes de tener un bus nicoEl rendimiento de un bus puede disminuir si se conecta un gran nmero de dispositivosA ms dispositivos conectados, mayor retardo de propagacinLos dispositivos tardarn ms en coordinarse para usar el busSi el control del bus pasa con frecuencia de un dispositivo a otro, los retardos afectarn al rendimientoEntre ms peticiones reciba el bus, ms probable ser que se cruce la barrera de su capacidad mxima, convirtindose el bus en un cuello de botellaPuede resolverse usando buses ms rpidos y/o ms anchosLa velocidad y la anchura tienen lmites fsicos, mientras que la velocidad de transferencia que necesitan los dispositivos conectados al bus se est incrementando rpidamente[STALLINGS 3.4]

  • *Jerarqua de busesEl bus nico est destinado a dejar de utilizarseLa mayora de los computadores utilizan varios buses organizados de forma jerrquica[STALLINGS 3.4]

  • *Jerarqua de busesEl procesador se conecta con la memoria cach por medio de un bus local al que tambin pueden conectarse dispositivos de E/S locales[STALLINGS 3.4]

  • *Jerarqua de busesEl controlador de la memoria cach se conecta tanto al bus local como al bus del sistema, donde se encuentran los distintos mdulos de la memoria principal[STALLINGS 3.4]

  • *Jerarqua de busesLos controladores de E/S se pueden conectar directamente al bus del sistemaLas transferencias entre la memoria y la E/S no interferirn en la actividad del procesador[STALLINGS 3.4]

  • *Jerarqua de busesEs ms eficiente conectar los controladores de E/S a un bus de expansinSu interfaz regula las transferencias de datos entre los controladores E/S conectados a l y el bus del sistema[STALLINGS 3.4]

  • *Jerarqua de busesEl bus de expansin permite:Conectar una amplia variedad de dispositivos de E/SAislar el trfico de informacin Memoria Procesador del trfico correspondiente a la E/S[STALLINGS 3.4]

  • *Jerarqua de buses de alto rendimientoLa jerarqua de buses tradicional es razonablemente eficiente, pero no consigue adaptarse al continuo aumento del rendimiento de los dispositivos de E/S

    La respuesta a este problema consiste en utilizar un bus de alta velocidadEstrechamente integrado al resto del sistemaSlo se requiere un adaptador (bridge) entre el bus del procesador y el bus de alta velocidad

    Esta arquitectura recibe el nombre de arquitectura de entreplanta[STALLINGS 3.4]

  • *Jerarqua de buses de alto rendimientoEl procesador se conecta por medio de un bus local al controlador de la memoria cachEl controlador de la memoria cach se conecta a su vez al bus del sistema donde est la memoria principal[STALLINGS 3.4]

  • *Jerarqua de buses de alto rendimientoEl controlador de la memoria cach est integrado junto con el adaptador o dispositivo de acoplo que permite la conexin con el bus de alta velocidad[STALLINGS 3.4]

  • *Jerarqua de buses de alto rendimientoEl bus de alta velocidad se utiliza para conectar los controladores de E/S rpidos que as lo necesitenLos ms lentos pueden conectarse al bus de expansin, que usa una interfaz para adaptar el trfico que circula[STALLINGS 3.4]

  • *Jerarqua de buses de alto rendimientoLa ventaja de esta organizacin es que el bus de alta velocidad acerca al procesador los dispositivos que exigen un rendimiento elevado pero, al mismo tiempo, es independiente del procesador[STALLINGS 3.4]

  • *Jerarqua de buses de alto rendimientoLos adaptadores e interfaces tratan con las diferencias de velocidad y de definicin de lneas de los busesLos cambios realizados en una parte de la arquitectura no afectan a las dems partes[STALLINGS 3.4]

  • *Estructura del temaIntroduccinGeneralidades: el bus del sistemaEstructura del busJerarquas de buses mltiplesElementos de diseo de un busEstudio de caso: el bus PCIEstructurardenesTransferencia de datosArbitraje

  • *Elementos de diseo de un busExiste una gran variedad de diseos de buses pero, en general, hay unos pocos elementos comunes de diseo que permiten clasificarlos y distinguirlos unos de otros[STALLINGS 3.4]

  • *Tipos de busesLas lneas de bus se pueden dividir en dos tipos genricos:Dedicadas: estn permanentemente asignadas a una funcin o a un conjunto de componentes del computadorUn ejemplo tpico de dedicacin funcional es el uso de lneas separadas para direcciones y datosMultiplexadas: pueden utilizarse para propsitos diferentesDirecciones y datos podran transmitirse por la misma lnea si se utilizara una seal de control Direccin VlidaSe pone la direccin en el bus y se activa la lnea de control, dando un tiempo para que los distintos controladores lean el bus y comprueben si estn siendo direccionadosDespus de un periodo de tiempo se quita la direccin del bus y se utilizan las mimas lneas para realizar la transferencia[STALLINGS 3.4]

  • *Tipos de busesLa dedicacin fsica requiere el uso de mltiples buses, cada uno de los cuales conecta solo a un conjunto de controladoresVentaja: alto rendimiento por el menor nmero de conflictosDesventaja: incremento del costo y el tamao del sistema

    El multiplexado en el tiempo de las lneas permite utilizar las mismas lneas para usos diferentesVentaja: normalmente ahorra espacio y costesDesventajas:Los controladores necesitarn una circuitera ms complejaLa falta de paralelismo puede reducir el rendimiento[STALLINGS 3.4]

  • *Mtodo de arbitrajeEn un momento dado puede haber ms de un controlador intentando usar el bus, pero slo uno de ellos puede obtener el control y usarlo para transmitir

    Es necesario disponer de un mtodo de arbitraje que determine quin utiliza el bus

    En general, los diversos mtodos de arbitraje se pueden clasificar en:CentralizadosDistribuidos[STALLINGS 3.4]

  • *Mtodo de arbitrajeEl objetivo de ambos mtodos de arbitraje es designar un dispositivo como maestro del bus, el cual iniciar una transferencia hacia otro dispositivo (esclavo)

    En un esquema centralizado hay un nico dispositivo fsico llamado controlador de bus o rbitroEl rbitro es el responsable de asignar tiempos en el busPuede ser un mdulo separado o parte del propio procesadorEn un esquema distribuido no existe un rbitro centralCada mdulo dispone de lgica para controlar el accesoLos mdulos actan conjuntamente para compartir el bus[STALLINGS 3.4]

  • *TemporizacinEl trmino temporizacin hace referencia a la forma en la que se coordinan los eventos en el busCon temporizacin sncrona, la presencia de un evento en el bus est determinada por una seal de relojEl reloj es una lnea del bus a travs de la que se transmite una secuencia de 1s y 0s a intervalos regulares de igual duracinEl ciclo de reloj o de bus es el intervalo mnimo en el que la seal toma los dos valores posibles y define la unidad de medida del tiempo dentro del bus (time slot)Todos los eventos empiezan al principio del ciclo de busCon temporizacin asncrona, la presencia de un evento en el bus es consecuencia y depende de que se produzca un evento previo[STALLINGS 3.4]

  • *TemporizacinLa temporizacin sncrona es ms fcil de implementar y comprobar

    Sin embargo, la temporizacin sncrona es menos flexible debido a que todos los dispositivos conectados al bus deben operar a la misma frecuencia de reloj y, por tanto, no siempre se aprovecharn sus posibilidades

    La temporizacin asncrona permite que una mezcla de dispositivos rpidos y lentos, construidos con distintas tecnologas, compartan un mismo bus[STALLINGS 3.4]

  • *Temporizacin sncrona[STALLINGS 3.4]

  • *Temporizacin asncrona: lectura[STALLINGS 3.4]

  • *Temporizacin asncrona: escritura[STALLINGS 3.4]

  • *Anchura del busLa anchura de un bus es el nmero de lneas distintas que lo componen

    La anchura del bus afecta tanto a la capacidad como al rendimiento del sistemaCuanto 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 sistemaCuanto ms ancho es el bus de direcciones, mayor es el rango de posiciones a las que se puede hacer referencia y, por tanto, mayor es la capacidad mxima del sistema[STALLINGS 3.4]

  • *Tipos de transferencia de datosUn bus permite varios tipos de transferencias de datosTodos los buses permiten transferencias de lectura y escrituraTransferencias de lectura:esclavo maestroTransferencias de escritura:maestro esclavoEn el caso de un bus multiplexado, primero se especifica la direccin y luego se transmite el datoLas lecturas implican esperar la respuesta del esclavoTanto en lecturas como en escrituras pueden aparecer retardos adicionales si es necesario tomar el control del bus dos veces por medio de un procedimiento de arbitraje[STALLINGS 3.4]

  • *Tipos de transferencia de datosUn bus permite varios tipos de transferencias de datosTodos los buses permiten transferencias de lectura y escrituraTransferencias de lectura:esclavo maestroTransferencias de escritura:maestro esclavoEn el caso de lneas dedicadas, la direccin se sita en el bus de direcciones y se mantiene ah mientras que el dato se ubica en el bus de datosEn una escritura, el maestro pone el dato tan pronto se estabiliza la direccin y el esclavo ha podido reconocerlaEn una lectura, el esclavo pone el dato tan pronto como haya reconocido la direccin y disponga del mismo[STALLINGS 3.4]

  • *Tipos de transferencia de datosAlgunos buses permiten operaciones combinadasUna lectura-modificacin-escritura es una lectura seguida inmediatamente de una escritura en la misma direccinLa direccin se proporciona una sola vez al comienzo de la operacinLa operacin se considera indivisible para evitar el acceso al dato por parte de otros maestros del bus (proteccin de memoria compartida)[STALLINGS 3.4]

  • *Tipos de transferencia de datosAlgunos buses permiten operaciones combinadasUna lectura-despus-de-escritura consiste en una escritura seguida de una lectura en la misma direccinTambin es una operacin indivisibleLa lectura puede tener el propsito de comprobar el resultado[STALLINGS 3.4]

  • *Tipos de transferencia de datosAlgunos buses permiten transferencias de bloques de datosHay un ciclo de direccin y luego varios ciclos de datosEl primer dato se transmite a/desde la direccin especificada, mientras que el resto de datos se transfieren a/desde las direcciones siguientes

    [STALLINGS 3.4]

  • *Estructura del temaIntroduccinGeneralidades: el bus del sistemaEstructura del busJerarquas de buses mltiplesElementos de diseo de un busEstudio de caso: el bus PCIEstructurardenesTransferencia de datosArbitraje

  • *El bus PCI[STALLINGS 3.5]El bus PCI (Peripheral Component Interconnect) es un bus muy popular de ancho de banda elevado e independiente del procesador

    Est diseado para permitir una cierta variedad de configuraciones basadas en sistemas monoprocesador y sistemas multiprocesadorProporciona un conjunto de funciones de uso generalLas direcciones y datos estn multiplexadas en el tiempoEl esquema de arbitraje empleado es centralizadoUtiliza temporizacin sncrona

  • *El bus PCI[STALLINGS 3.5]El diseo del bus PCI se ha realizado especficamente para ajustarse a los requisitos de E/S de los sistemas actuales

    Podemos distinguir tres ventajas del bus PCIEs econmico: se implementa con muy pocos circuitosEs flexible: permite que otros buses se conecten a lEs rpido: comparado con otras especificaciones comunes de bus, proporciona un mejor rendimiento para los subsistemas de E/S de alta velocidadPuede utilizarse como bus de perifricosTambin puede utilizarse para una arquitectura de entreplanta

  • *El bus PCI[STALLINGS 3.5]Las especificaciones del bus PCI son de dominio pblicoSon respetadas por un amplio abanico de fabricantes de procesadores y perifricos, por lo que los productos de diferentes compaas son compatiblesLa asociacin PCI SIG (special interest group) contina el desarrollo de las especificaciones y vela por que se mantenga la compatibilidad

    El resultado ha sido que el bus PCI no solo est ampliamente adoptado en la actualidad sino que su uso se sigue extendiendo

  • *PCI en sistemas monoprocesador[STALLINGS 3.5]Un dispositivo integra el controlador de memoria y el adaptador al bus PCIProporciona el acoplamiento al procesador (buffer temporal)Asla la capacidad de E/S del procesador de la velocidad real del bus, lo que posibilita transmitir datos a alta velocidad

  • *PCI en sistemas multiprocesador[STALLINGS 3.5]Se pueden conectar una o varias configuraciones PCI al bus del sistema por medio de adaptadoresAl bus del sistema slo se conectan las unidades procesador/cach, la memoria principal y los adaptadoresLos adaptadores mantienen la independencia procesador-PCI

  • *Estructura del temaIntroduccinGeneralidades: el bus del sistemaEstructura del busJerarquas de buses mltiplesElementos de diseo de un busEstudio de caso: el bus PCIEstructurardenesTransferencia de datosArbitraje

  • *Estructura del bus PCI[STALLINGS 3.5]El estndar actual permite configurar el bus PCI como un bus de 32 64 bitsHay 49 lneas de seal obligatorias que se dividen en los siguientes grupos funcionales:Terminales de sistema: reloj y reinicioTerminales de direcciones y datos32 lneas para direcciones y datos multiplexadas en el tiempoLneas adicionales para interpretar y validar las direcciones y datosTerminales de control de interfaz: controlan la temporizacin de las transferencias y permiten la coordinacin entre emisor y receptorTerminales de arbitraje: no son lneas compartidas cada maestro tiene su propio par de lneas que lo conectan con el rbitro del busTerminales para seales de error: utilizadas para indicar errores (paridad)

  • *Estructura del bus PCI[STALLINGS 3.5]

  • *Estructura del bus PCI[STALLINGS 3.5]

  • *Estructura del bus PCI[STALLINGS 3.5]

  • *Estructura del bus PCI[STALLINGS 3.5]El estndar actual permite configurar el bus PCI como un bus de 32 64 bitsLa especificacin tambin define 51 seales opcionales que se dividen en los siguientes grupos funcionales:Terminales de interrupcin: no son lneas compartidas cada dispositivo tiene sus propias lneas para generar peticiones a un controlador de interrupcionesTerminales de soporte de cach: necesarios para permitir memorias cach en el bus asociadas a un procesador o a otro dispositivoTerminales de ampliacin a bus de 64 bits32 lneas para direcciones y datos multiplexadas en el tiempo que se pueden combinar con las obligatorias para tener un total de 64Lneas adicionales para interpretar y validar las direcciones y datos, as como para permitir que dos dispositivos acuerden el uso de los 64 bitsTerminales de test: siguen estndar IEEE para procedimientos de test

  • *Estructura del bus PCI[STALLINGS 3.5]

  • *Estructura del bus PCI[STALLINGS 3.5]

  • *Estructura del temaIntroduccinGeneralidades: el bus del sistemaEstructura del busJerarquas de buses mltiplesElementos de diseo de un busEstudio de caso: el bus PCIEstructurardenesTransferencia de datosArbitraje

  • *rdenes del bus PCI[STALLINGS 3.5]La actividad del bus consiste en transferencias entre dispositivos conectados al busEl dispositivo que inicia la transferencia es el maestroCuando el maestro adquiere el control del bus determina el tipo de transferencia que se realizar (lneas C/BE)

    Los tipos de rdenes son:Reconocimiento de interrupcinOrden de lectura generada por el controlador de interrupciones del busLas lneas de direccin no se utilizan para direccionar el dispositivoLas lneas de byte activo (byte enable) indican el tamao del identificador de interrupcin a devolver

  • *rdenes del bus PCI[STALLINGS 3.5]Los tipos de rdenes son:Ciclo especial: se utiliza para iniciar la difusin de un mensaje a uno o ms destinatariosCiclo de direccin dual: el maestro utiliza esta orden para indicar que la transferencia utiliza direcciones de 64 bitsLectura de E/S y Escritura de E/SSe utilizan para intercambiar datos entre el maestro y un controlador de E/SCada dispositivo de E/S tiene su propio espacio de direccionesLas lneas de direcciones se utilizan para indicar un dispositivo concreto y para especificar los datos a transferir a/desde ese dispositivo

  • *rdenes del bus PCI[STALLINGS 3.5]Los tipos de rdenes son:Lectura de memoriaSe utiliza para especificar la transferencia de una secuencia de datos desde memoria durante uno o ms ciclos de relojSi el controlador de memoria utiliza el protocolo PCI para las transferencias entre la cach y la memoria principal, la transferencia se realizar en trminos de lneas de cachHay tres rdenes de lectura de memoria distintas:

  • *rdenes del bus PCI[STALLINGS 3.5]Los tipos de rdenes son:Escritura en memoriaSe usa para transferir datos a memoria durante uno o ms ciclos del busHay dos rdenes de escritura en memoria distintasEscritura en memoriaEscritura e invalidacin de memoriaTransfiere datos e indica que al menos se ha escrito una lnea de cachPermite el funcionamiento de una cach write back (postescritura)Lectura de configuracin y Escritura de configuracinPermiten que el maestro lea y actualice los parmetros de configuracin de un dispositivo conectado al busCada dispositivo puede disponer de hasta 256 registros internos que permitan configurarlo

  • *Estructura del temaIntroduccinGeneralidades: el bus del sistemaEstructura del busJerarquas de buses mltiplesElementos de diseo de un busEstudio de caso: el bus PCIEstructurardenesTransferencia de datosArbitraje

  • *Transferencias de datos en el bus PCI[STALLINGS 3.5]Toda transferencia de datos en un bus PCI es una transaccin nica que consta de una fase de direccionamiento y una o ms fases de datos

    Como ejemplo veremos la temporizacin de una operacin de lectura tpica (la de escritura es anloga)Los dispositivos conectados al bus interpretan las lneas en los flancos de subida de la seal de reloj (comienzo del ciclo)Todos los eventos se sincronizan en los flancos de bajada de la seal de reloj (punto medio del ciclo)

  • *Transferencias de datos en el bus PCI[STALLINGS 3.5]

  • *Transferencias de datos en el bus PCI[STALLINGS 3.5]Una vez que el maestro del bus tiene el control del mismo inicia la transaccinSita la direccin de inicio en las lneas AD y la orden de lectura en las lneas C/BEActiva la seal FRAME, la cual debe permanecer activa hasta que el maestro est listo para terminar la ltima fase de datosAl comienzo del segundo ciclo de reloj, el dispositivo del que se lee reconocer su direccin en las lneas ADEl maestro deja libres las lneas ADEn todas las lneas que pueden ser activadas por ms de un dispositivo se necesita un ciclo de cambio para que la liberacin se complete y el bus pueda ser utilizado por el dispositivoEl maestro cambia las lneas C/BE para indicar cules de las lneas AD se utilizarn para transferir el datoEl maestro activa IRDY indicando que est listo para recibir el primer dato

  • *Transferencias de datos en el bus PCI[STALLINGS 3.5]El dispositivo de lectura se prepara para responderActiva DEVSEL para indicar que ha reconocido la direccin y va a responder; la seal permanecer activa mientras dure la transferenciaSita el dato solicitado en las lneas ADActiva TRDY para indicar que hay un dato vlido en el busEl maestro lee el dato al comienzo del cuarto ciclo de reloj y cambia las lneas de habilitacin de byte segn se necesite para la prxima lecturaEn este ejemplo, el dispositivo de lectura necesita algn tiempo para preparar el segundo bloque de datosDesactiva TRDY para indicar que no transmitir el prximo cicloEl maestro, en consecuencia, no lee las lneas de datos al comienzo del quinto ciclo de reloj y no cambia la seal de habilitacin de byteEl nuevo bloque de datos se leer al comienzo del sexto ciclo

  • *Transferencias de datos en el bus PCI[STALLINGS 3.5]Durante el sexto ciclo de reloj, el dispositivo de lectura sita el tercer bloque de datos en el bus, pero el maestro no est preparado para leerloEl maestro desactiva IRDYEl dispositivo de lectura mantiene el dato en el bus durante un ciclo extraEl maestro sabe que el tercer bloque de datos es el ltimo,Desactiva FRAME para indicarle al dispositivo de lectura que ste es el ltimo dato a transferirActiva IRDY para indica que est listo para completar la transferenciaEl maestro desactiva IRDY y el dispositivo de lectura contesta desactivando TRDY y DEVSEL: el bus vuelve a estar libre

  • *Estructura del temaIntroduccinGeneralidades: el bus del sistemaEstructura del busJerarquas de buses mltiplesElementos de diseo de un busEstudio de caso: el bus PCIEstructurardenesTransferencia de datosArbitraje

  • *Arbitraje del bus PCI[STALLINGS 3.5]El bus PCI utiliza un esquema de arbitraje centralizado sncrono en el que cada maestro tiene una nica seal de peticin (REQ) y cesin (GNT) del busEstas lneas se conectan a un rbitro central, lo que permite que los dispositivos accedan al bus tras un simple intercambio de seales de peticin y cesin

  • *Arbitraje del bus PCI[STALLINGS 3.5]La especificacin del bus PCI no indica un algoritmo particular de arbitrajeEl rbitro puede utilizar cualquier esquema de prioridadPrimero en llegar, primero en servirseRotatorio (round robin)El maestro establece, para cada transferencia que desee realizar, si tras la fase de direccin sigue una o ms fases de datos consecutivasComo ejemplo veremos el intercambio de seales necesario para decidir cual de entre dos dispositivos, A y B, obtiene el control del bus

  • *Arbitraje del bus PCI[STALLINGS 3.5]

  • *Arbitraje del bus PCI[STALLINGS 3.5]Al comienzo del primer ciclo de reloj el rbitro detecta que A ha activado su seal REQDurante el primer ciclo de reloj, B activa tambin su seal REQAl mismo tiempo, el rbitro activa GNT-A para ceder el bus a AA detecta al comienzo del segundo ciclo de reloj que se le ha cedido el busIRDY y TRDY estn desactivadas, por lo que el bus est libreEn consecuencia activa FRAME, pone la direccin en el bus AD y la orden correspondiente en las lneas C/BEAdems, mantiene activa su seal REQ porque debe realizar otra transferencia despus de sta

  • *Arbitraje del bus PCI[STALLINGS 3.5]Al comienzo del tercer ciclo de reloj el rbitro vuelve a comprobar las lneas REQ y decide ceder el bus a B para la siguiente transaccinEl rbitro desactiva GNT-A y activa GNT-BA pesar de tener acceso al bus, B tendr que esperar a que est libre, pues IRDY y TRDY indican que sigue ocupadoA desactiva FRAME para indicar que su ltima transferencia de datos est activaPone los datos en el bus AD y se lo indica al dispositivo destino con IRDYEl dispositivo lee el dato al comienzo del siguiente ciclo de relojAl comienzo del quinto ciclo de reloj, B encuentra IRDY y TRDY desactivadasToma el control del bus activando FRAMEDesactiva REQ porque no desea transmitir un segundo dato

  • *Arbitraje del bus PCI[STALLINGS 3.5]Ms adelante, el dispositivo A (que mantena REQ activa) recuperar el control del bus y continuar la transmisin pendiente

    Es importante destacar que el arbitraje se produce al mismo tiempo que el actual maestro del bus realiza una transferenciaNo se pierden ciclos de bus para realizar el arbitrajeEsto se conoce como arbitraje oculto o solapado (hidden arbitration)

  • *Bibliografa[STALLINGS]Organizacin y arquitectura de computadoresWilliam StallingsPearson Education Prentice Hall, 2005 (7 edicin)