Vous êtes sur la page 1sur 5

PCI Express

1
PCI Express
Cet article ou cette section est actualiser.
Des passages de cet article sont obsoltes ou annoncent des vnements dsormais passs. Amliorez-le
[1]
ou discutez des points
vrifier.
Cet article ne cite pas suffisamment ses sources(novembre 2012).
Si vous disposez d'ouvrages ou d'articles de rfrence ou si vous connaissez des sites web de qualit traitant du thme abord ici, merci
de complter l'article en donnant les rfrences utiles sa vrifiabilit et en les liant la section Notes et rfrences (modifier l'article
[1]
).
Port PCI Express (de haut en bas : 4, 16, 1 et 16), compar au
traditionnel Port PCI 32-bit (en bas)
Le PCI Express, abrg PCI-E ou PCIe
(anciennement 3GIO, 3rd Generation Input/Output) est
un standard dvelopp par Intel et introduit en 2004. Il
spcifie un bus local srie ( bus PCI express ) et un
connecteur qui sert connecter des cartes dextension
sur la carte mre dun ordinateur. Il est destin
remplacer tous les connecteurs dextension dun PC,
dont le PCI et lAGP.
Une volution du PCI
Carte PCI express pleine hauteur
Un avantage du PCI Express est dtre driv de la norme PCI
(Peripheral Component Interconnect), ce qui permet aux constructeurs
dadapter simplement leurs cartes dextension existantes, puisque seule
la couche matrielle est modifier. Dautre part, il est suffisamment
rapide pour pouvoir remplacer non seulement le PCI classique mais
aussi lAGP, un port rapide pour cartes graphiques.
Contrairement au PCI qui est reli au southbridge de la carte mre, le
PCI Express est souvent disponible la fois au niveau du northbridge
et du southbridge, il a mme t rcemment intgr certains
microprocesseurs.
Alors que le PCI utilise un unique bus de largeur 32 bits bidirectionnel altern (half duplex) pour lensemble des
priphriques, le PCI Express utilise une interface srie (de largeur 1 bit) base de lignes bidirectionnelles. On
pourra ainsi parler dune carte mre possdant 20 lignes PCIe. Une ligne permet thoriquement des changes full
duplex 250Mo/s pour la version 1.1 du protocole. Les diffrents priphriques communiquent alors par change de
paquets et larbitrage du bus PCI est remplac par un commutateur. Le principe de fonctionnement est semblable de
la commutation de paquets selon un modle quatre couches :
couche logicielle : codage/dcodage des paquets de donnes.
PCI Express
2
couche transaction : rajout/suppression dun en-tte de dbut et dun en-tte de squencement ou de numrotation
du paquet.
couche liaison : rajout/suppression dun code de correction derreur (contrle de redondance cyclique).
couche physique : transmission du paquet (transmission srie point point).
On parle de ports PCIe 1, 2, 4, 8, 16 et 32 pour diffrencier les ports en fonction du nombre de connecteurs
de ligne dont ils disposent (respectivement 1, 2, 4, 8, 16 ou 32 lignes maximum). Un port 32 permet d'atteindre en
thorie un dbit de 8Go/s, soit 4 fois le dbit des ports AGP
[2]
.
Un port 16 par exemple peut ntre reli qu 8 lignes PCIe ; il devra tout de mme avoir un apport de puissance
lectrique ncessaire aux cartes 16. Une carte dextension 16 fonctionnera sur ce port (mais probablement avec
des performances non optimales), car le protocole PCIe prvoit la ngociation mutuelle du nombre de lignes
maximum supportes par les deux entits en relation. De mme, une carte (exemple : 1) peut tre connecte et
fonctionnera correctement sur un port plus grand (exemple : 1, 2, , 32)....
En 2007 est apparu la deuxime gnration de PCIe : gen 2.0. Cette version permet, entre autres, de passer le dbit
de 250Mo/s 500Mo/s par sens par lien (le dbit de la premire gnration gen 1.0 est doubl).
Cette mme anne a t publie, en fvrier, la norme External PCI Express 1.0 (ePCIe 1.0, Cabled PCIe 1.0)
,
, qui
permet de connecter des priphriques externes sur le bus PCIe, en utilisant une carte permettant de rediriger celui-ci
vers un connecteur externe. Le dbit de chaque ligne est limite 250Mo/s. Il existe des connecteurs et des cbles
pour les versions 1x, 4x, 8x et 16x du bus. Une volution vers des lignes 500Mo/s (comme le PCIe 2.0) est prvue
mais sans date annonce.
En 2010, PCI-SIG publie le cahier des charges du PCIe : gen 3.0. Le dbit est doubl 1000Mo/s grce une
augmentation de 60 % de la frquence qui est maintenant de 8GHz contre 5GHz pour la gen 2.0, mais aussi par un
encodage 128 bits/130 bits. Au lieu de consommer 20 % du dbit pour gen 2.0, cet encodage ne fait plus perdre que
1,6 % de la bande passante totale. Les premiers priphriques en PCIe 3.0 sont arrivs mi-2011, mais les cartes
graphiques exploitant cette interface ne sont arrives que dbut 2012.
Les bases de PCIe
Deux liens diffrentiels permettent l'change de donnes en mission (direct) et rception (revers) entre deux points
A & B.
'n' de ces liens constituent alors les chemins d'changes (lane) : PCIe 1x 2x 4x 8x.
Un signal mission ou rception est donc compos de deux fils en mode diffrentiel.
La combinaison des signaux mission et rception, soit 4 fils, constitue un chemin (lane).
Le regroupement de 'n' chemin reprsentent le lien PCIe nX.
Root composant permet l'accs au CPU, la mmoire ou tout autre priphrique.
Switch composant qui est optionnel permet le transfert PCIe entre end point sans passer par le root.
End point sont les priphriques d'changes.
Les donnes sont labores sous forme de paquets.
PCIe permet le contrle de flux, la QoS, la virtualisation de canaux, une latence prvisible...
Dbit et bande passante :
Une paire diffrentielle permet un dbit de 2,5 Gbit/s
PCIe 1x aura donc un dbit utile de (2,5 * 1000 * 2 * 8/10)/8 = 500Mo/s
Le facteur 2 vient du mode full duplex mission + rception.
Le facteur 8/10 est introduit par l'encodage 8B10B utilis.
PCIe suit le modle OSI :
La couche PHYsique permet le passage des paquets en un flux srie. (PCS/PMA layer)
PCI Express
3
La couche Data link permet la gestion de l'intgrit du lien (LCRC) et le contrle de flux.
La couche Transaction permet les accs plus haut niveau : mmoire, I/O...
Un calcul de CRC est effectue au niveau data link, il permet de vrifier l'intgrit des changes ce niveau.
Un deuxime calcul est ralis au niveau transactionnel, c'est un calcul de CRC de bout en bout (ECRC).
Si ECRC est faux, il est possible de demander de renvoyer nouveau le paquet.
Ceci est gr au niveau data link par un paquet DLLP (data link layer paquet) spcifique.
Les paquets de type DLLP sont transparents l'utilisateur qui ne voit que les paquets TLP en gnral.
DLLP sont donc des paquets de management (completion, configuration).
Software layer *data*
+-------------------+
| Transaction layer | **Header,*data*,ecrc**
+-------------------+
| Data Link Layer |
| | ***Sequence,**Header,*data*,ecrc**,lcrc***
+-------------------+
| PHYsical LAyer |
| | Start,***Sequence,**Header,*data*,ecrc**,lcrc***,End
+-------------------+
L'en tte du packet PCIe est de 3 4 mots de 32 bits.
La zone de charge utile, data, est de 0 1024 mots de 32 bits.
Un mot de 32 bits est appel Double Word (DW) sachant qu'un word est un double octet et qu'un octet est compos
de 8 bits.
Le niveau physique est compos des lments suivant :
circuit de rcupration d'horloge (cot rception), (PMA)
SERDES, (PMA)
embrouilleur, (PMA)
encodage 8B/10B. (PCS)
Le niveau data link dispose d'un "Replay Buffer" cot mission permettant de renvoyer le paquet lorsque le rcepteur
dtecte des erreurs.
Diffrents types de transactions existent :
lecture ou d'criture du plan mmoire,
configuration en phase d'initialisation,
messages permettant l'change d'vnements entre priphriques,
achvement (completion) de la transaction.
Deux types de transactions sont possibles : post ou non poste.
La transaction de type poste envoie un paquet et n'attend rien en retour : c'est comme une lettre la poste.
La transaction de type non poste qui attend un paquet d'achvement en retour : c'est comme une lettre en
recommande.
Une criture mmoire sera de type post alors qu'une lecture mmoire sera de type non post.
Si l'usage fait de PCIe est simple, l'utilisateur peut se brancher au niveau transactionnel.
Il faudra alors grer les paquets TLP (transaction layer paquet) en mission rception.
Pour des usages plus pousss, des IP existent (cas d'un design FPGA).
Cette sur couche grera par exemple des accs mmoire direct DMA en mode "scatter gather" ventuellement.
PCI Express
4
PCI Express 2
Article dtaill : PCI Express 2.
PCI Express 3
Cette section est vide, insuffisamment dtaille ou incomplte. Votre aide
[1]
est la bienvenue !
Notes et rfrences
[1] http:/ / fr. wikipedia. org/ w/ index. php?title=PCI_Express& action=edit
[2] commentcamarche.net (http:/ / www. commentcamarche. net/ contents/ pc/ pci-express. php3)
Portail de linformatique
Sources et contributeurs de larticle
5
Sources et contributeurs de larticle
PCI Express Source: http://fr.wikipedia.org/w/index.php?oldid=103838992 Contributeurs: A3 nm, ABACA, AFAccord, Archeos, Arm@nd, Arnaud.Serander, ArsniureDeGallium, Axou,
Belgavox, Binabik155, Bub's, Cgsyannick, Dadu, Ecclecticus, Eutvakerre, Freewol, Ggal, Isaac Sanolnacov, JackPotte, Jona, Julien06200, Kelson, Kyro, LYV, Madlozoz, MetalGearLiquid,
Mikay, NaSH, Nataraja, Nono64, Noritaka666, Oz, Pautard, Phe, Rohanec, Salam32, Sangen48, Sebleouf, Sherbrooke, Simorou, Speculos, Tafreser, Thesupermat, W'rkncacnter, Ygonaar,
Yves-Laurent, Zetud, 45 modifications anonymes
Source des images, licences et contributeurs
Fichier:Out of date clock icon.svg Source: http://fr.wikipedia.org/w/index.php?title=Fichier:Out_of_date_clock_icon.svg Licence: GNU Lesser General Public License Contributeurs:
Composition by Tkgd2007. I used and modified images from the alternative sources listed below.
Fichier:Question book-4.svg Source: http://fr.wikipedia.org/w/index.php?title=Fichier:Question_book-4.svg Licence: GNU Free Documentation License Contributeurs: Tkgd2007
Image:PCIExpress.jpg Source: http://fr.wikipedia.org/w/index.php?title=Fichier:PCIExpress.jpg Licence: GNU Free Documentation License Contributeurs: FxJ, GMLSX, GreyCat, Jokes
Free4Me, Jona, Mentifisto, Paxan, Trelio, Wouterhagens, 16 modifications anonymes
Fichier:PCIe card full height.jpg Source: http://fr.wikipedia.org/w/index.php?title=Fichier:PCIe_card_full_height.jpg Licence: Creative Commons Attribution-Sharealike 3.0 Contributeurs:
User:Bubba73
Fichier:Crystal mycomputer.png Source: http://fr.wikipedia.org/w/index.php?title=Fichier:Crystal_mycomputer.png Licence: inconnu Contributeurs: Dake, Rocket000
Licence
Creative Commons Attribution-Share Alike 3.0
//creativecommons.org/licenses/by-sa/3.0/

Vous aimerez peut-être aussi