Cuando un dispositivo soporta velocidades full/high speed es obligatorio obtener los descriptores de:
Device - Device_qualifier - Other_speed_configuration - Configuration - Interface
Device_qualifier - Other_speed_configuration - Configuration - Interface
Device - Other_speed_configuration - Interface - Configuration
Device - Device_qualifier - Other_speed_configuration - Interface
De forma genérica, la línea de control típica de escritura en memoria...
Indica que el dato de la posición direccionada se sitúe en el bus
Indica que el dato presente en el bus se transfiera a través del puerto de E/S direccionado
Avisa a un dispositivo que el dato que envió ha sido aceptado o que el dato que desea está disponible en el bus
Indica que un dispositivo necesita disponer del control del bus.
Que el dato presente en el bus se escriba en la posición direccionada
Todas las otras son falsas
El bus I2C:
Es un bus serie con cuatro hilos, síncrono y bidireccional:
Es un bus serie con dos hilos, síncrono y bidireccional
Un bus paralelo asíncrono, bidireccional
Es un bus serie bidireccional con dos hilos con protocolo asíncrono
Es un bus serie bidireccional con dos hilos con protocolo asíncrono y multimaster
Todas las anteriores son falsas
El bus PCI de 32 bits tiene...
Líneas de arbitraje para implementar una gestión tipo “daisy-chain” en cuatro canales.
Líneas de test que siguen el estándar IEEE para procedimientos de test.
Parejas de líneas REQ-GNT para permitir la gestión centralizada de múltiples maestros
Líneas de Soporte de cache para permitir memorias cache en el bus asociadas a otro dispositivo.
Líneas de interrupción no compartidas, de tal forma que cada dispositivo puede generar peticiones a un controlador de interrupciones.
Todas las anteriores son ciertas
Todas las anteriores son falsas.
El bus PCI de 64 bits tiene
Parejas de líneas REQ-GNT para permitir la gestión centralizada de múltiples maestros.
Líneas de soporte de caché para permitir memorias de caché en el bus asociadas a otro dispositivo.
Todas las anteriores son ciertas.
El método de arbitraje...
Centralizado permitiría fácilmente implementar (simular) una política daisy-chain, pero no al contrario.
Daisy-chain permitiría fácilmente implementar (simular) una política centralizada, pero no al contrario
Centralizado y el daisy-chain, ambos, permiten de forma sencilla implementar (simular) un arbitrio del otro tipo si ello fuese necesario
Centralizado así como el daisy-chain con construcciones hardware que impiden que uno se comporte como el otro
El método de arbitraje centralizado:
Es el más eficiente y de construcción más sencilla y económica.
Es el más seguro y robusto que existe, a pesar de ser algo antiguo.
Tiene el inconveniente de que su construcción es más complicada, pero lo compensa porque es posible establecer políticas distintas y variables (dinámicas)
Es de implementación sencilla pero la prioridad viene fiada por la posición relativa en el bus
El método de arbitraje por “Daisy-Chain”:
Es el más eficiente porque permite implementar cualquier política de la forma más económica.
Tiene el problema de que su construcción es más complicada, pero lo compensa porque es posible establecer políticas distintas y variables (dinámicas).
Es de implementación muy sencilla pero la prioridad viene fiada por la posición relativa en el bus.
El propósito de las líneas de control es...
designar la fuente o el destino del dato situado en el bus de datos
proporcionar un camino para transmitir datos entre los módulos del sistema
determinar quién accede a las líneas de datos y direcciones y gestionar el uso que se hace de esas líneas
determinar cuántos bits se pueden transmitir de forma simultánea y, por tanto, la velocidad de transferencia
determina el tamaño máximo del espacio de direcciones del sistema
En el bus I2C, el esclavo...
Es el que continuamente pone las direcciones y los datos en SDA y también el reloj(SCL)
Después de la condición de Start envía un código de dirección de un esclavo(8 bits de dirección + 1 bit de R/W + 1 stop bit)
Es el que continuamente pone las direcciones y los datos en SDA pero no el reloj (SCL)
Después de la condición de Start envía un código de dirección de un esclavo (7 bits de direcc. + 1 bit de R/W)
Después de la condición de Start envía un código de dirección de un esclavo (8 bits de direcc. + 1 bit de R/W)
En el bus I2C, el master…..
después de la condición de Start envía un código de dirección de un esclavo (8 bits de direcc.+1 bit de R/W)
después de la condición de Start envía un código de dirección de un esclavo (7 bits de direcc.+ 1 bit de R/W)
después de la condición de Start envía un código de dirección de un esclavo (8 bits de dirección + 1 bit de R/W+ 1 stop bit)
es el que continuamente pone las direcciones y los datos en SDA pero no el reloj (SCL)
es el que continuamente pone las direcciones y los datos en SDA y también el reloj (SCL)
En el bus I2C, el master...
Después de la condición de Start envía un código de dirección de un esclavo (8 bits de direcc.+ 1 bit de R/W) + un bit de acknowledge.
Después de la condición de Start envía un código de dirección de un esclavo (7 bits de direcc.+ 1 bit de R/W) + un bit de acknowledge.
Después de la condición de Start envía un código de dirección de un esclavo (8 bits de direcc.+ 1 bit de R/W + 1 stop bit).
Después de la condición de Start envía un código de dirección de un esclavo (8 bits de direcc.+ 1 bit de R/W).
Después de la condición de Start envía un código de dirección de un esclavo (7 bits de direcc.+ 1 bit de R/W).
En una operación de transferencia de un bloque de datos:
La dirección se proporciona una sola vez al comienzo y además, esta operación se considera indivisible para que se pueda completar la transferencia del bloque completo sin interrupción.
El primer dato se transmite desde la dirección especificada, mientras que el resto de datos se transfieren a/desde las direcciones siguientes.
Se realizan alternativamente lecturas y escrituras sucesivas a distintas posiciones de un mismo bloque de memoria, con la finalidad de optimizar el uso de la cache.
Estamos accediendo a un puerto de entrada/salida
En el bus PCI la orden “ciclo de dirección dual”...
Es usada por el maestro de bus para indicar que la transferencia utiliza direcciones de 64 bits
Es usada por el maestro para iniciar la difusión de un mensaje a más de un destinatario.
Es generada por el controlador de interrupciones indicando que las líneas de dirección se utilizan para direccionar el dispositivo y el tamaño doble del identificador a devolver.
Se utiliza para especificar la transferencia de una secuencia de datos desde memoria durante uno o más ciclos de reloj posibilitando transferencias en términos de líneas de caché.
En el bus PCI la señal FRAME#:
Es activada por el dispositivo seleccionado cuando ha reconocido su dirección
Es activada por el maestro del bus y durante la lectura indica que el maestro está preparado para aceptar datos y durante la escritura indica que hay un dato válido en bus
Es activada por el maestro para indicar el comienzo de una transferencia y la desactiva anticipadamente para indicar que va a terminar la transferencia
Es activada para indicar que se trata de una operación atómica indivisible que puede necesitar varias transferencias
En el bus PCI la señal IRDY# :
Es activada por el maestro del bus y durante la lectura indica que el maestro está preparado para aceptar datos y durante la escritura indica que hay un dato válido en el bus
Es activada para indicar que se trata de una operación atómica indivisible que puede necesitar varias transferencias.
En el bus PCI la señal STOP# :
En el caso de un bus multiplexado...
Primero se especifica la dirección y luego se transmite el dato, pueden aparecer retardos adicionales si fuese necesario tomar el control del bus dos veces por medio de un procedimiento de arbitraje.
La dirección se proporciona una sola vez al comienzo y además, esta operación se considera indivisible.
La dirección se sitúa en el bus de direcciones y se mantiene ahí mientras que el dato se ubica en el bus de datos.
En un sistema de bus único con muchos dispositivos...
Los dispositivos tardan menos en coordinarse ya que todos comparten el mismo bus y la velocidad aumenta.
Los dispositivos tardarán más en coordinarse al compartir el mismo bus y la velocidad empeora.
Los cambios realizados en una parte de la arquitectura no afectan a las demás partes.
Se consigue alta velocidad ya que acerca al procesador los dispositivos que exigen un rendimiento elevado.
Todas las otras son falsas.
En una operación combinada de lectura-modificación-escritura:
la dirección se proporciona una sola vez al comienzo y además, esta operación se considera indivisible.
el primer dato se transmite a/desde la dirección especificada, mientras que el resto de datos se transfieren a/desde las direcciones siguientes
se realizan alternativamente lecturas y escrituras sucesivas a distintas posiciones de un mismo bloque de memoria, con la finalidad de optimizar el uso de la caché
estamos accediendo a un puerto de entrada/salida
todas las anteriores son falsas
La latencia de la transmisión en un bus paralelo...
Es un factor directamente relacionado con el ancho de banda, de forma que cuanto mejor es el ancho de banda, mejor es la latencia.
Es lo que ha obligado a que existan las operaciones de lectura-después-de-escritura
Es un factor que se contrapone al ancho de banda y que lo limita.
Es mucho mejor cuando aumentamos la frecuencia de reloj del procesador
Es un factor que no tiene porqué mejorar al aumentar el ancho del bus.
Las operaciones de lectura-modificación-escritura...
Proporcionan la dirección una sola vez al comienzo, salvo que mientras se realiza la modificación otro maestro escriba en esa posición, lo que obligaría a reiniciar la lectura
Proporcionan la dirección una sola vez al comienzo y es considerada indivisible, lo que es útil entre otras cosas para proteger la memoria compartida del acceso de otros maestros
Buscan garantizar la seguridad haciendo una lectura previa del valor que se va a escribir, de forma que si se produce un error en el bus, se podría restaurar el valor antiguo
Son operaciones antiguas que se mantienen por garantizar la compatibilidad con el hardware existente
Son propias y características de bus PCI y no están en ningún otro bus
Las órdenes del bus PCI de lectura y escritura de configuración...
Hacen que podamos conectar distintos dispositivos sin que importe sus velocidades
Permiten que el maestro lea y actualice parámetros de configuración de dispositivos conectados al bus
Permiten que se realice las transferencias en términos de líneas de caché, si el controlador de memoria utiliza el protocolo PCI para las transferencias entre la caché y la memoria principal
Se utilizan para intercambiar datos entre el maestro y un controlador de E/S
Las órdenes del bus PCI de lectura de memoria ….
hacen que podamos conectar distintos dispositivos sin que importe sus velocidades.
permiten que el maestro lea y actualice parámetros de configuración de dispositivos conectado al bus
permiten que se realice las transferencias en términos de líneas de caché, si el controlador de memoria utiliza el protocolo PCI para las transferencias entre la caché y la memoria principal.
se utilizan para intercambiar datos entre el maestro y un controlador de E/S
Los buses síncronos...
Debido a los sesgos de reloj (clock skew) los buses no pueden ser muy grandes si son rápidos.
Pueden ser grandes sin problemas con el sesgo de reloj, ya que se corrige con el “handshake”
Pueden soportar la conexión concurrente de muchos dispositivos.
Ajustan la temporización de la transferencia al dispositivo a controlar.
Tienen la temporización de la transferencia fijada por el reloj del maestro, aunque existe la posibilidad de que el dispositivo esclavo introduzca ciclos de espera
Ajustan la temporización de la transferencia al dispositivo a controlar, para lo que se hace necesario utilizar señales de “handshake”
Han sustituido casi totalmente al asíncrono en todos los ámbitos porque ahora es el método más moderno.
Los drivers de bus con salida “open‐ colector”.
Es necesario que tenga una resistencia de “pull‐up” y funciona como un OR‐implícito.
Es necesario que tenga una resistencia de “pull‐up” y funciona como un AND‐implícito.
Es necesario que tenga una resistencia de “pull-down” y funciona como un AND-implícito.
Es necesario que tenga una resistencia de “pull-down” y funciona como un OR-implícito.
Sus valores de salida, pueden ser “alto”(high”, bajo(low) o “desconectado”(“alta impedancia o “three-state”)
Respecto a las conexiones virtuales o “pipes” podemos decir que:
Son asociaciones entre un “endpoint” y el software del controlador host
No son asociaciones entre un “endpoint” y el software del controlador host
No son asociaciones entre un “endpoint” y el software del controlador "startpoint"
Todas son falsas
Respecto del número de endpoints de un dispositivo podemos afirmar que:
El número máximo de endpoints es de 32 en full/high speed y de 4 en low speed
El número máximo de endpoints es de 16 en full/high speed y de 4 en low speed
El número máximo de endpoints es de 32 en full/high speed y de 16 en low speed
El número máximo de endpoints es de 8 en full/high speed y de 16 en low speed
Un bus es...
Un canal de comunicación compartido, que utiliza un conjunto de cables o vías de comunicación para conectar múltiples subsistemas
Una guagua
Un canal de comunicación compartido, que utiliza varios cables para conectar varios subsistemas
Una línea de un bus que es “open-colector”..
Necesita que exista una resistencia de “pull-up” y se introduce un “and- implícito” entre todas las conexiones.
Necesita que exista una resistencia de “pull-up” y se introduce un “and- explícito” entre todas las conexiones.
Necesita que exista una resistencia de “pull-up” y se introduce un “or- explícito” entre todas las conexiones.
Necesita que exista una resistencia de “pull-up” y se introduce un “or- implícito” entre todas las conexiones.
Una transferencia de datos que necesite de la detección y control de errores no podrá utilizar
Transferencias de control
Transferencias de interrupción
Transferencias isócronas
Transferencias tipo “bulk” o de gran volumen