Fabian

Solo disponible en BuenasTareas
  • Páginas : 15 (3693 palabras )
  • Descarga(s) : 0
  • Publicado : 23 de agosto de 2012
Leer documento completo
Vista previa del texto
Bus PCI


Estructura del bus


Además de los dispositivos maestros (initiators) y los dispositivos esclavos (targets) en un bus PCI conviven otros dos tipos de dispositivos: Las interfaces Host-PCI y las interfaces PCI-PCI.

La interfaz Host-PCI es la que está directamente en contacto con el procesador. Cualquier transacción del procesador es captada por esta interfaz y trasladada al BusPCI. De este bus cuelgan dispositivos maestros y dispositivos esclavos que prestan atención por si la transacción iniciada por el procesador está dirigida a ellos y además puede haber interfaces PCI-PCI que a su vez trasladan la transacción al bus que controlan.



Cada dispositivo maestro o esclavo puede proporcionar al sistema una o varias funciones. Como máximo 8. Las funciones dentro delos dispositivos se numeras de 0 a 7. Si un dispositivo proporciona una única función, ésta es la función 0. Si proporciona más de una función, por ejemplo 3, éstas pueden ser la cero, la dos y la cuatro, considerándose no implementadas la función 1, la 3, la 5 y la 7..
Esto es porque, tras el arranque, se explora el bus buscando la existencia de dispositivos y las funciones que albergan. Leyendoun registro de configuración de la función cero se sabe si el dispositivo contiene una o varias funciones.
Se sabrá si cada dispositivo proporciona una determinada función leyendo el contenido del registro Vendor ID, que contendrá un código válido si la función está implementada o 0FFFFh si no lo está.

Dada la estructura de varios niveles que puede tener un bus PCI, es necesario disponer deun método que permita identificar y localizar a cada uno de los dispositivos pinchados en él. Para ello se va a dotar a los buses de una numeración, siendo el Bus 0 el que es controlado directamente por la interfaz Host-PCI, que se puede considerar la raíz del árbol. Cada una de las interfaces PCI-PCI tiene constancia, en un registro interno, del rango de buses del cual es raíz. La interfazHost-PCI almacena la información de cuántos buses hay en el sistema.

Por lo tanto cada dispositivo reside en un bus. A su vez los dispositivos de un bus están ordenados por una línea mediante la cual son señalados cuando se les desea hacer referencia, es la IDSEL#. En alguna configuración, esta línea puede estar directamente conectada a la interfaz del bus al que esté pinchado el dispositivo, demanera que cuando esta interfaz detecte una transacción destinada a determinado dispositivo activará su línea IDSEL#. En otros esquemas, y sólo durante la fase de configuración, algunas de las líneas del bus pueden servir para que un dispositivo se considere señalado.

Dentro de los dispositivos, y para cada una de las funciones que implementa un dispositivo, existen un conjunto de registros queservirán para describir la función que realiza el dispositivo, y los requerimientos de memoria, entrada/salida, vectores de interrupción que requiere del sistema. Estos registros permiten que los dispositivos puedan ser configurados de forma automática y dinámica, esto es, que se puedan configurar completamente mediante software y que puedan reconfigurarse para encajar sin conflictos lasactualizaciones del sistema..


Espacios de direccionamiento.


En un bus PCI existen tres espacios de direccionamiento:

-Memoria
-Entrada Salida
-Configuración

El espacio de direcciones de memoria tiene un tamaño de hasta 232 dado que el bus de direcciones de PCI puede alcanzar los 32 bits. (64 si incluimos los ciclos de dirección dual) Observar que una dirección de memoria es en definitiva unidentificador dentro del sistema de una localización, presumiblemente, donde almacenar un byte. Esto significa que disponemos de 232/64 identificadores que podemos asignar a localizaciones de memoria o a dispositivos de entrada salida si mapeamos estos en memoria.

Del espacio de Entrada/Salida se puede decir tres cuartos de lo mismo que se ha dicho del espacio de direcciones de memoria, salvo...
tracking img