Parte 2 Flashcards
(53 cards)
A que se refiere Prefetchable en un request de espacio de memoria ?
Es una región de la memoria (MMIO) en la que se leen datos anticipadamente de manera especulativa para mejorar el performance de tal modo que si un requester solicita los datos leídos anticipadamente se le entreguen al instante.
Los dispositivos con 256B de registers/storage son accesados mediante que espacio?
Mediante IO Address space
Los dispositivos que tienen registers/ storage de 16KB se accesan con que espacio?
Del tipo MMIO
Cuales son los tipos de request de espacio que solicitan los dispositivos y se programa en el BAR?
Del tipo
[ 1 ] para IO requests
[ 0 ] para P-MMIO y NP-MMIO
De manera general como se inicializa un BAR?
Los bits menos significativos no son modificables (hard-coded) por el diseñador.
Los upper bits son de lectura/escritura en un inicio son Xs que indican que aún no se inicializa
Con config writes el software escribe en las Xs solo 1s para indicar que esos bits son programables.
Que es el DMI?
Direct Media Interface
Es un controlador lógico de alta velocidad para la transferencia entre el PCH y el CPU y que es transparente al software.
Que es el Root port (RP)?
Es el puerto saliente ubicado en el Root Complex (RC) es un P2P.
Que recomienda la especificación cuando un dispositivo requiere un rango de espacio Mayor a 4GB?
Que sean tratados como memoria y del tipo prefetchable es decir no side effects reads
Es el tipo de memoria que solo puede soportar direcciones de 32-bit y es del tipo [00] hard-coded. ?
La memoria NP-MMIO
Como se indica el rango de direcciones en un request IO.?
En los registros IO Base y IO limit que son de 16 bits
Ej. 4000h - 4FFFh
A diferencia de un BAR el tipo de request no se puede programar con 0s para indicar que no se utiliza ese request, que se hace en estos casos?
Se debe programar o asignar un valor en base mayor al del límite, de este modo el bridge detecta como algo inválido y asume que no hay un request presente.
Para que se configura un BAR y los registros de Base/Limit en el header.?
Para asegurar que el tráfico de los paquetes apuntan al target correcto y que la función será capaz de identificar y reclamar el paquete.
Cuales son los tipos de tráfico en la topología PCIE?
De la capa física Ordered Sets
Data Link Layer Packets (DLLPs)
Transaction Layer Packets (TLPs)
A que se refiere el tráfico peer-to-peer (P2P)?
Básicamente a los paquetes que envía un Endpoint hacia otro Endpoint
Menciona los tres tipos de routing que se utilizan?
Los TLPs pueden ser direccionados mediante:
Address ( memory y IO)
ID (con Bus, Device y Function number)
Implicit Routing
Que determina el tipo de ruteo a utilizar?
El tipo de TLP (paquete)
Menciona los tipos de transacciones (TLPs)?
Memory R/W Memory read lock AtomicOp IO R/W Messages Completions
Que tipo de TLPs son mejor para Address routing ?
Memory R/W
AtomicOp
IO R/W
También algunos mensajes
Que ruteo se implementa en los TLPs de configuración R/W y para los Completions ?
Se utiliza un ID Routing y también para algunos mensajes
Que ruteo o routing se emplea para los mensajes ?
Los mensajes pueden utilizar los tres tipos de routing va a depender del tipo de mensaje
ID, Address e implicit routing
Cuál es el principal objetivo de implementar mensajes en PCIE ?
Para mejora del diseño es decir reducir el número de señales o side-bands que se utilizaban para:
Interrupt pins
Error pins
Power management signals, etc.
Que ventaja tiene el Split transaction protocol ?
Permite aceptar una o más solicitudes y responder a cada request con un completion distinto o por separado
Por que las transacciones memory write son del modelo Posted?
Por que para reducir latencia que consume un completion. Significa que en cuanto sale del requester la transacción de escritura es marcada como completada.
Que transacciones necesitan un completion es decir son del modelo Non-posted?
Memory reads Memory reads lock AtomicOps IO reads / writes Configuration reads / writes