7 votos

¿Qué significa "configuración" se refieren en el PCI y PCIe? Cómo es esto diferente de "Enumeración"

No soy capaz de encontrar una descripción clara de lo que la configuración de los medios en PCI y PCIe. He encontrado algo que se llama como el espacio de configuración, pero sin saber lo que la configuración de los medios, no es posible entender realmente lo que el espacio de configuración es.

Así que ¿qué configuración y un espacio de configuración PCI y PCIe decir? Y cómo es esto diferente de "Enumeración"?

11voto

Louise Puntos 16

Cada dispositivo PCI (cuando escribo PCI, me refiero a PCI 3.0, frente a PCIe) tiene dos "rangos" - configuración de rango (CFG) y "memoria asignada de entrada-salida" de la gama (MMIO). Yo no buceo profundo en los conceptos de la dirección de espacios y MMIO porque va a hacer que la respuesta es demasiado largo y complicado. Google si ellos no están familiarizados. En resumen: CFG rango es un conjunto estándar de los registros utilizados para configurar el dispositivo PCI; MMIO gama es una costumbre conjunto de registros. En otras palabras: CFG rangos de la misma a través de todos los dispositivos PCI (puede haber ligeras diferencias, pero la mayoría de los registros son estándar); MMIO rangos son específicos del dispositivo (NOTA: si bien los términos "rango" y "espacio" no son sinónimos, no existe un consenso para llamar a un MMIO gama del dispositivo de MMIO espacio. Voy a utilizar de forma indistinta)

Ahora, el tamaño de CFG espacio es estándar - no hay un límite superior en el número de registros CFG espacio puede contener y es el mismo para cada dispositivo PCI. Generalmente, el número real de registros en CFG espacio es mucho menor que la máxima. El tamaño de MMIO espacio, por otro lado, no es constante. Por qué? Así, los diferentes dispositivos necesitan diferentes número de registros para la comunicación.

Ahora piensa por un momento: si el tamaño de MMIO espacio no es constante, entonces tenemos que proporcionar la información acerca de este tamaño de un determinado dispositivo a la computadora de alguna manera, ¿verdad? Una opción sería la de definir manualmente estos parámetros para cada dispositivo. Es la forma en que los primeros equipos trabajado: había que configurar cada dispositivo se conecta a un ordenador a mano. Hoy somos perezosos y desea que el "plug-and-play" - el equipo debe obtener esta información por sí mismo el momento en que un nuevo dispositivo se agrega.

Con el fin de permitir el "plug-and-play" en los dispositivos PCI, el concepto de MMIO Acceso a la Base de Registros (MMIO Bares) se introdujo. Estos registros residen en CFG espacio de cada dispositivo (creo que hay hasta cinco Barras por CFG el espacio están permitidos). El flujo es el siguiente:

  1. un equipo que sabe a la búsqueda de estos registros durante el inicio
  2. un equipo lee los Bares con el fin de entender lo que los tamaños de MMIO rangos ¿este dispositivo requiere
  3. un equipo asigna el dispositivo de MMIO espacios, que se convertirá en el estándar de MMIO de rangos en el mundial de MMIO espacio
  4. un equipo escribe de nuevo a MMIO Barras de las direcciones asignadas para cada dispositivo de MMIO rango en el mundial de MMIO espacio.

4 etapas son conocidas como "enumeración" del dispositivo - creo que es por lo general la BIOS que realiza de los dispositivos de enumeración durante el inicio.

Excepto para las Barras, CFG espacio de un dispositivo contienen muchos más registros. Todos los demás se escribe en CFG espacio, que no es parte de "enumeración" de flujo, se llama "configuración" del dispositivo. Esto incluye el tiempo de ejecución de configuraciones, tales como: interrupción de selección, MSI vectores y las direcciones de dispositivo de energía de estados unidos, y muchos más.

En resumen: "enumeración" es el flujo ejecutado en el inicio que asigna MMIO rangos para todos los dispositivos. "configuración" es todo lo que otro escribe a CFG espacio del dispositivo (en general, "enumeración" está incluido en "configuración").

NOTA: esta descripción simplificada. Hay más aspectos a la "enumeración" y "configuración".

Offtopic:

Parece que eres nuevo en PCIe y desea obtener una rápida introducción. Mientras que su deseo es totalmente comprensible (que tomará un camino de más tiempo para entender PCIe si usted no hace preguntas), creo que nada puede sustituir a la original especificación. El problema es que la especificación PCIe está escrito en la manera que se supone que usted está familiarizado con el PCI (al menos parecía que manera me) - tienes que leer primero. Por lo tanto, empezar por googlear PCI 3.0 specification y PCIe 2.1 specification. Estos documentos son excesivamente largo, pero se convertirán en tu biblia si usted realmente va a trabajar con dispositivos PCIe.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X