当前位置:网站首页>Pcie EA (Enhanced allocation) Introduction

Pcie EA (Enhanced allocation) Introduction

2021-10-14 06:16:22 Mangopapa







— EA Fiche d'information —

1. EA Fiche d'information

  PCIe Enhanced Allocation (EA), Allocation améliorée ,Est une sorte de PCIe 3.1 Présentation、PCIe 4.0 Une alternative officiellement introduite PCIe Capacité.C'est ouvert EA Competent PCIe Les composants permettent de configurer l'espace BAR Répartition hors champ d'application IO、Memory Et Bus Number Ressources.En un mot,PCIe EA Le mécanisme est —— Flexible dans l'espace de configuration d'origine BAR Pas besoin. , Remplacer par une valeur fixe .

  PCI L'architecture de configuration actuelle est disponible dès le début . Grâce à ses fonctionnalités plug - and - play conviviales ,PCI Configuration de l'architecture pendant près de 30 ans , Il fait encore chaud. .PCI Structure de configuration éprouvée , Sont liés aux avantages suivants: :

️ Capacité de simplifier et d'accélérer l'intégration des systèmes ;
️ Réduire le firmware du système / Frais généraux et complexité du logiciel ;
️ Système de levage Debug Capacité et robustesse ,Attendez un peu!.

  PCI/PCIe Configurer le BAR Est configurable de manière flexible ( Reconfigurable à tout moment ), Avec cette architecture de configuration PCIe Système, Chaque composant du système est basé sur le bus physique partagé et l'architecture intégrée plug - and - play pour le décodage d'adresse indépendamment . Mais cette configuration flexible BAR Pas très approprié pour SoC Ou plus Chip Module,À cause de ça. SoC Ou plus Chip La plupart des modules ne nécessitent pas de programmation répétée ,SoC Beaucoup d'entre eux ont IP Ne supporte pas non plus la flexibilité MMIO, Pas de configuration flexible du matériel et des logiciels BAR La demande de, Cette flexibilité augmente les coûts et la complexité du système. .

  Pour s'adapter à cette situation,EA Le mécanisme est né dans le ciel ! Tu n'as pas besoin d'être agile. BAR,OK,Enlève ça.! Tu m'as donné une portée fixe. ,C'est bon.!


— EA Introduction du mécanisme —

2. EA Introduction du mécanisme

2.1 EA Champ d'application

  EA Capacité limitée à des situations spécifiques Function Utilisé dans.Function Peut - on utiliser EA, En fonction de son emplacement PCIe La position dans la hiérarchie et dans PCIe Incarnation dans l'environnement de la plateforme .

  1️⃣ Connectez - vous seulement depuis le démarrage de l'appareil (Directement ou indirectement) Sur le pont principal Function( Nous appelons cette connexion permanente ),Pour utiliser EA Mécanismes.
  2️⃣ Relié au pont principal Bridge Dans Function, Si elle est en aval Function Fixé en permanence au pont principal , Et puis 、 Port en aval (C'est - à - dire: Primary Side Et Secondary Side)Peut être utilisé EA.
  3️⃣ Relié au pont principal Bridge Dans Function, Si elle est en aval Function Non fixé en permanence au pont principal , Seuls les ports en amont sont disponibles EA, Le port en aval n'est pas disponible EA.


2.2 EA Utiliser les règles

2.2.1 Règles de base

   En aval Function Non fixé en permanence au pont principal Bridge Function, Son port de liaison descendante ne peut utiliser que non EA Mécanisme d'allocation des ressources Type1 Header Dans Bus Number Et MMIO/IO Espace d'adresse.Pour Bridge De ses composants en aval Bus Number Et MMIO/IO Espace d'adresse, Le logiciel système doit s'assurer que: :① Répartition Bus Number In EA Fixation spécifiée par le registre des capacités Secondary/Subordinate Bus NumberDans le champ d'application;② Répartition MMIO/IO L'espace d'adresse est EA Dans la plage des attributs pertinents spécifiés par la capacité .Pour plusieurs Bridge De Function, Matériel spécifié Bus Number、MMIO/IO Chevauchement autorisé dans l'espace d'adresse , Toutefois, le logiciel doit s'assurer qu'il n'y a pas de chevauchement entre les gammes réellement utilisées. .

   Si quelque chose Function Dépend uniquement EA En cours IO Et allocation d'adresses mémoire ,Alors... Function De BAR Doit être câblé comme suit: 0( Le concepteur doit indiquer ces éléments dans la documentation. Function Dépendances EA).

  Si Function Adoption EA Le mécanisme alloue des ressources et indique ce qu'il remplace BAR,C'est ça. Function Impossible de continuer à utiliser l'espace de configuration original correspondant BAR.

   Si l'un des ponts Function N Soutien EA,Le Function Peut être adopté EA Le mécanisme indique que Function En avalBridge Function Portée des ressources ,Mais pas nécessairement.. Le logiciel système doit comprendre Function N Il n'y a pas d'obligation d'indiquer son aval Function Ressources utilisées , Le logiciel système doit traverser complètement Function N En aval de Function Pour déterminer l'étendue des ressources utilisées .

  EA Le mécanisme ne modifie pas la paire dans le registre de commande IO、 Activer le commutateur pour le décodage de la plage de mémoire, etc. .

  Sauf que BridgeEn aval Function De Bus Number Ou des ressources telles que l'espace d'adresse peuvent se chevaucher ,EA Toutes les ressources allouées par le mécanisme ne doivent pas se chevaucher .


2.2.2 Extension ROM Avec EA Mécanismes

   Avec extension ROM De Function Extensions disponibles ROM Mécanisme d'adresse de base pour spécifier ROM Espace d'adresse,Peut également être utilisé EA Mécanisme de désignation , Mais ne peut pas être activé en même temps .Si FunctionAdoption EA Assigner des mécanismes pour spécifier les extensions ROM Espace d'adresse pour(EA Entry BEI = 8),Pour étendre ROM Registre des adresses de base(Fig.1)Extension in ROM Activer et étendre ROM La valeur du champ Adresse de base n'a plus de sens , Doit être câblé comme suit: 0,Adoption EA Entry Activer le BIT et EA Entry Espace d'adresse spécifié dans .Si Function Maintien de l'extension ROM Registre des adresses de base pour spécifier ROM Espace d'adresse, Et EA Entry De BEI Non. 8. En cas d'extension ROM Soutien ROM Validation, Extension dans les deux cas ROM Dans le registre des adresses de base ROM Validation Status Et Details Les valeurs des champs sont valides .

Fig.1 Extension ROM Registre des adresses de base

Fig.1 Extension ROM Registre des adresses de base

2.3 EA Structure des capacités

  Avec EA Les composantes de la capacité doivent être mises en œuvre EA Structure des capacités. Tous les composants EA La structure des capacités ① EA En - tête d'extensibilité、② EA Entry,Type 1 Les composants du type sont: ③ Fixed Bus Number.

  EA En - tête d'extensibilité(Fig.2), Indique que le composant actuel a EA Capacité、EA EntryNombre, Et pointer vers l'adresse offset de la prochaine capacité .

  Fixed Bus Number(Fig.3),Uniquement pourType 1 Type Function,Position EA Après l'en - tête extensible 、Le premier EA EntryAvant,2DW, Utilisé pour indiquer Bridge Function Descendant Fixed Secondary Bus Number Et Fixed Subordinate Bus Number.Si actuel Function Au moins un Function C'est ouvert EA Mécanismes,Fixed Secondary Bus Number Champ utilisé pour indiquer Function Secondary Interface Bus Number, Fixed Subordinate Bus Number Champ utilisé pour indiquer Function Plus grand en aval Bus Number.Si actuel Function Pas après. Function Ouvert EA Mécanismes,EtFixed Secondary Bus Number Et Fixed Subordinate Bus Number Le champ doit être réglé à zéro .

  EA Entry(Fig.4), Action et protéine PCIe Configurer l'espace BAR Similaire,Voir détails 2.3.1.Parce queType 0 Function De EA Structure des capacités non Fixed Bus Number Registres,Type 0 Avec Type 1 Function Correspondant EA Entry Décalage de l'adresse de départ différent .

Fig.2 EAEn - tête d'extensibilité

Fig.2 EAEn - tête d'extensibilité

Fig.3 EA Fixed Bus Number Registres

Fig.3 EA Fixed Bus Number Registres

Fig.4 Type0 Function EA Entry Format

Fig.4 Type0 Function EA Entry Format


2.3.1 EA Entry Format

  EA Entry Comme indiqué ci - dessus(Fig.4)Comme indiqué,Y compris: Entry Enable、Writable、Properties、BAR Equivalent Indicator、Size、Base、MaxOffset Champ égal.


Entry Registre de contrôle


Fig.5 EA Entry Registre de contrôle

Fig.5 EA Entry Registre de contrôle

  Chaque EA Entry Le premier DW Oui, c'estEntryPour contrôler(Fig.5),La signification de chaque champ est la suivante:

Entry Size (ES): Utilisé pour indiquer le courant Entry Taille( Déduction du premier DW).0 Indique queEntry Seulement le premier. DW Données.
BAR Equivalent Indicator (BEI): Utilisé pour indiquer le courant Entry Équivalence BAR,BEI Correspondant BAR Comme indiqué dans le tableau 1 Comme indiqué.
Primary Properties:Indiquer Entry Propriétés de la ressource correspondante ,Voir tableau pour plus de détails2.
Secondary Properties:Facultatif,- Oui. Primary Options pour les attributs , Pour indiquer un talon Primary Propriétés différentes mais compatibles ,Voir tableau pour plus de détails2.
Writeable (W): Utilisé pour indiquer Entry De Base Et MaxOffset Champ writable ,1 Pour écrire.Seulement Entry Propriété de la ressource réservée Entry C'est écrit. .
Enable (E): Indique si le courant est activé Entry.


Base Avec MaxOffset Champ

  Base Champ utilisé pour indiquer Entry Assigner l'adresse de départ de l'espace d'adresse ,Base[1:0] Pour quelque raison que ce soit. 00b.Base + MaxOffset Est l'adresse finale ,MaxOffset[1:0] Pour quelque raison que ce soit. 11b.Base Et MaxOffset Debit[1] Utilisé pour indiquer la largeur du BIT d'adresse ,0 -> 32 bit,1 -> 64 bit.Si Base[1] Ou MaxOffset[1] Pour 0, Et donc son équivalent [63:32] Position Entry N'existe pas, Au lieu de 0 Remplissage.


BEI Champ

  BEI Utilisé pour indiquer le courant Entry Équivalence BAR,BEI Correspondant BAR Comme indiqué dans le tableau 1 Comme indiqué.Type0 FunctionMoyenne,Pour BEI Pour 0-5 Situation, Bien que l'alignement des adresses ne soit pas nécessaire , Mais il est fortement recommandé de définir Base Et MaxOffset Utiliser une adresse alignée , Pour éviter les problèmes d'utilisation du logiciel .

Tableau1 BEI Avec BAR Correspondance
BEI Valeur BAR
0-5 En cours Entry équivalent à l'adresse (10h+4*BEI)De BAR
6 Uniquement pourType 1 Type Function, Indique optionnellement si Function En aval deFunction
7 Non précisé
8 Le Entry Extension correspondante ROM Adresse de base
9-14 Le Entry Correspondant à VF BAR (BEI-9),C'est - à - dire: VF BAR 0-5
15 Réservé,Non précisé

  BEI Règles d'utilisation des champs

● Type 0 Type Function Peut être adopté EA Le mécanisme lui - même alloue des ressources ,BEI Pour 0-5,7 Ou 8
● En soutien SR-IOV De Type 0 Type Function Moyenne,PF Disponible EA Répartition des mécanismes VF Ressources,BEI Pour9-14
● Type 1 Type Function Peut être adopté EA Le mécanisme lui - même alloue des ressources ,BEI Pour0, 1 Ou 7
● Type 1 Type Function C'est bon.(Non obligatoire)Adoption EA Mécanisme en aval Function Affectation des ressources ,BEI Pour6
● Pour 64-bit Registre des adresses de base à large bande ,BEI Adresse du représentant faible DW Correspondant BAR Emplacement
● Primary/Secondary Properties Pour 00h Ou 01h Heure(C'est - à - dire: EntryGenre Sexe comme espace de stockage ),Base + MaxOffset Moins de 4GB Et plus grand que 4GB Deux. Entry La même chose peut être utilisée BEI,BEI Pour 0-5
● Primary/Secondary Properties Pour 03h Ou 04h Heure(C'est - à - dire: Entry La propriété est PF Répartition VF Espace de stockage pour),Base + MaxOffset Moins de 4GB Et plus grand que 4GB Deux. Entry La même chose peut être utilisée BEI,BEI Pour 9-14
● Pour deux Entry BEI Même situation,En particulier Function Le logiciel ne peut activer qu'une seule des deux plages à la fois
● BEI Pour 6 Ou 7 De Entry Nombre illimité , Peut être n'importe quel nombre
● Il ne peut y en avoir qu'un au plus. BEI Pour 8 De Entry,S'il existe BEI = 8 De Entry,
● PourType 1 Type Function,BEI = 2-5 Réservé


Properties Champ

  EA Entry Properties Champ utilisé pour indiquer Entry Propriétés de la ressource correspondante ,Voir tableau pour plus de détails2.Primary Est un attribut requis ,Secondary Properties- Oui. Primary Options pour les attributs (Facultatif), Pour indiquer un talon Primary Propriétés différentes mais compatibles , Au cas où le logiciel ne reconnaîtrait pas Primary Propriétés.

  Par exemple,, L'ancien logiciel système fonctionne sur le nouveau matériel , Le nouveau matériel adopte la nouvelle définition Primary Propriétés, L'ancien logiciel ne connaît pas le nouveau matériel Primary Propriétés,Alors on peut utiliser Secondary Propriétés à traiter.Secondary La propriété doit être une propriété prise en charge à ce moment - là , Le matériel après cela est également compatible avec cette propriété .

Tableau2 Properties Signification du champ
Primary/Secondary
Properties Valeur (h)
Définition des ressources Peut - on écrire
00 Espace de stockage, Non Prefetch No
01 Espace de stockage,Prefetch No
02 IO Espace No
03 PF Indications VF,Espace de stockage,Prefetch No
04 PF Indications VF,Espace de stockage, Non Prefetch No
05 Type 1 Function Après indication Function Espace de stockage pour, Non Prefetch No
06 Type 1 Function Après indication Function Espace de stockage pour,Prefetch No
07 Type 1 Function Après indication Function De IO Espace No
08-FC Réservé, Le logiciel système ne peut pas écrire à ceci Entry,Peut être adopté Secondary Propriétés représentées par ce champ Yes
FD Stockage non disponible , Le logiciel système ne peut pas écrire ceci Entry, Ne peut pas non plus être utilisé EntryRessources No
FE IO Espace non disponible , Le logiciel système ne peut pas écrire ceci Entry, Ne peut pas non plus être utilisé Entry Ressources No
FF Le Entry Non disponible, Le logiciel système ne peut pas écrire ceci Entry, Ne peut pas non plus être utilisé Entry Ressources.Recommandations Secondary Properties Utilisé dans No


— EA Exemples d'application —

3. EA Exemples d'application

  Par exemple: PCIe Utilisation du système EA Exemples de mécanismes ,Comme le montre la figure6Comme indiqué,Function 0-5, 7-8 Fixé en permanence au pont principal ,Function 0-3 Pour Si component A,Function 0-1 Pour Type 0 Type,Bridge Function 2 Adoption Bus J Connecté non connecté en permanence Function 6,Bridge Function 3 Adoption Bus N Connecté en permanence Function 4-5. La partie verte est prise en charge EA Mécanismes, Bleu clair non pris en charge .

Fig.6 EA Exemples d'application

Fig.6 EA Exemples d'application


— RÉFÉRENCES —

RÉFÉRENCES

  1. PCI Express Base Specification Revision 5.0 Version 1.0 (22 May 2019)
  2. PCI Express Technology - Comprehensive Guide to Generation1.x, 2.x and 3.0. Mike Jacson, Ravi Budruk, MindShare, Inc.
  3. PCIe 3.1 & M-PCIe Protocol


— END —

版权声明
本文为[Mangopapa]所创,转载请带上原文链接,感谢
https://chowdera.com/2021/10/20211013211639710K.html

随机推荐