Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
Publié parOrianne Metayer Modifié depuis plus de 9 années
1
1 LE BUS PCI 8 ième partie: L ’espace de configuration Sommaire - Repère zHuitième partieL ’espace de configuration yQu ’est-ce? yEspace de configuration de type 00h yLa notion d ’adressage géographique yLes registres yEspace de configuration pour une entête de type 00h yExemple Cours_bus_PCI_7_02
2
2 LE BUS PCI 8 ième partie: L ’espace de configuration Qu ’est-ce? zEspace adressable dédié, complètement séparé zPermet l ’accès aux cibles PCI avant qu ’elles n ’aient été mappées dans l ’espace Mémoire ou l ’espace I/O zUtilisé pour la configuration et l ’initialisation du bus PCI et de la gestion des Erreurs zChaque agent PCI a un espace adressable de 256 octets, réservé aux registres de configuration yLes 16 premiers octets sont identiques pour tous les agents PCI yL ’entête (offset 0Eh) définit la configuration des octets suivants y3 types d ’entête: xType 00h:x000 0000Standard xType 01h:x000 0001PCI / PCI Bridge xType 02h:x000 0002CardBus Bridge xBit 7: agent mono (0) ou multi (1) fonction(s)
3
3 LE BUS PCI 8 ième partie: L ’espace de configuration Espace de configuration de type 00h
4
4 LE BUS PCI 8 ième partie: L ’espace de configuration La notion d ’adressage géographique zCommande transmise lors de la phase d ’adressage z2 types de commande yType 0:Adressage d ’un agent sur le même segment de bus yType 1: Adressage d ’un agent sur un autre segment de bus xReconnue uniquement par les bridges xTransformée en commande de type 0 par le bridge concerné zPhase d ’adressage d ’une transaction d ’accès à l ’espace de configuration: yC/BE[3::0]#: xAccès configuration écriture:1010 xAccès configuration lecture:1011 yIDSEL actif xChaque agent a une ligne IDSEL en entré xLes bridges seuls peuvent ne pas en avoir et assurer leur initialisation de manière autonome x21 lignes possibles, générées par le Host ou le Bridge yAdresses AD[31::0]
5
5 LE BUS PCI 8 ième partie: L ’espace de configuration La notion d ’adressage géographique 012345 6789 10101 1212 1313 1414 1515 1616 1717 1818 1919 2020 21212 2323 2424 2525 2626 2727 2828 2929 3030 3131 AD[31::0]: adressent l ’un des 64 registres (de 32 bits) de l ’espace de configuration adressent l ’une des fonctions de l ’agent (agent multi-fonctions) Type 0: Inutilisés (utilisables pour générer les IDSEL) Type 0: 00 Type 1: 01 Type 1: N° du segment de bus Type 1: Inutilisés (utilisables pour générer les IDSEL) Attention, charge supplémentaire!
6
6 LE BUS PCI 8 ième partie: L ’espace de configuration Les registres zRegistre de commande: offset 04h (twait)
7
7 LE BUS PCI 8 ième partie: L ’espace de configuration Les registres zRegistre de Statut: offset 06h (Pointeur)
8
8 LE BUS PCI 8 ième partie: L ’espace de configuration Espace de configuration pour une entête de type 00h zBase Address Register (BAR) yFournit un mécanisme de mapping des agents dans les espaces adressables y3 types d ’information sont nécessaires: xQuel espace adressable: I/O mémoire xL ’alignement des adresses xLa taille de l ’espace adressable requis
9
9 LE BUS PCI 8 ième partie: L ’espace de configuration Espace de configuration pour une entête de de type 00h zBAR correspondant à un agent de l ’espace mémoire zLargeur: 32 ou 64 bits Read only Base Address0 43210 Prefetchable Set to one if there are no side effects on reads, the device returns all bytes on reads regardless of the byte enables, and host bridges can merge processor writes into this range without causing errors. Bit must be set to zero otherwise. Memory space Indicator Type 00: Locate anywhere in 32 bit address space 01: Reserved 10: Locate anywhere in 64 bit address space 11: Reserved
10
10 LE BUS PCI 8 ième partie: L ’espace de configuration Espace de configuration pour une entête de de type 00h zBAR correspondant à un agent de l ’espace I/O zLargeur: 32 bits Read only
11
11 LE BUS PCI 8 ième partie: L ’espace de configuration Espace de configuration pour une entête de type 00h zBAR: Détermination de la taille mémoire et de l ’alignement yL’alignement et la taille sont déterminés par le nombre de bits de poids fort implémenté xExemple: Espace mémoire de 1 Moctets, alignement: yLe logiciel système peut ré-écrire toutes les valeurs lues à “1” pour déterminer la taille et l’alignement yL’agent utilise les contenus du registre en tant qu’entrée du décodeur d’adresses: Le décodage est une simple comparaison directe avec les bits d’adresses 01234 1919 2020 3131 0xxxForcés à « 0 »Accessibles en lecture / écriture
12
12 LE BUS PCI 8 ième partie: L ’espace de configuration Exemple (1/6) zPlan mémoire PCI pour le système suivant:
13
13 LE BUS PCI 8 ième partie: L ’espace de configuration Exemple (2/6) zÉtape 1: Détection du périphérique yIDSEL_Device1 = AD[31] IDSEL_Device2 = AD[30] yCycles de Lecture Configuration des identifications des agents et des vendeurs, numéro de 1 à 21 ySeulement 2 agents détectés par un accès en Lecture Configuration yTous les autres accès se terminent par un master abort du cycle de configuration lecture
14
14 LE BUS PCI 8 ième partie: L ’espace de configuration Exemple (3/6) zÉtape 2 : Détermination des besoins en mémoire yÉcriture de FFFF FFFFh dans le BAR du contrôleur graphique yLecture du BAR du contrôleur graphique: FF00 0000h yÉcriture de FFFF FFFFh dans le BAR du générateur de trame vidéo yLecture du BAR du générateur de trame vidéo: FE00 0000h Host PCI Bridge Graphics Controler Host CPU Frame Grabber 16 MB RAM 32 MB RAM Local CPU RAM 0000 0000h Device 1 Device 2 0000 0000h 0232431 Hardwired to 0RW Device 1 0242531 Hardwired to 0RW Device 2 BAR Layout before after before after FF00 0000hFE00 0000h
15
15 LE BUS PCI 8 ième partie: L ’espace de configuration Exemple (4/6) zÉtape 3 : Allocation mémoire yÉcriture de 1000 0000h dans le BAR du contrôleur graphique yÉcriture de 2000 0000h dans le BAR du générateur de trame vidéo Host PCI Bridge Graphics Controler Host CPU Frame Grabber 16 MB RAM 32 MB RAM Local CPU RAM FF00 0000h Device 1 Device 2 FE00 0000hbefore after before after 1000 0000h2000 0000h
16
16 LE BUS PCI 8 ième partie: L ’espace de configuration Exemple (5/6) zÉtape 4 : Initialisation du registre de commande PCI yAutorise l’espace mémoire du contrôleur graphique yAutorise l’espace mémoire et la possibilité d’être maître du générateur de trame vidéo
17
17 LE BUS PCI 8 ième partie: L ’espace de configuration Exemple (6/6) zÉtape 5 : Système opérationnel yBeaucoup de transferts de mémoire à mémoire autorisés...
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.