PCI (informatique)
# PCI (informatique)

L'interface PCI (de l'anglais Peripheral Component Interconnect) est un standard de bus local (interne) permettant de connecter des cartes d'extension sur la carte mère d'un ordinateur.

L'un des intérêts du bus PCI est que deux cartes PCI peuvent dialoguer entre elles sans passer par le processeur.

## Historique

La spécification de ce bus est initialement due à Intel, qui a commencé à y travailler vers 1990 à cause d'un problème de bande passante sur les PC de l'époque et d'autres problèmes inhérents aux différents bus 32 bits alors présents.

À la sortie du 386 (le premier x86 32 bits), IBM avait décidé de créer un nouveau bus 32 bits propriétaire pour les PC ; le bus MCA. Pour avoir une carte mère avec un bus 32 bits, il fallait payer des redevances à IBM. Les fabricants de compatible-PC décidèrent de ne pas suivre IBM et restèrent temporairement avec le bus ISA qui lui était libre de droits, mais ne permettait de communiquer qu'en 16 bits.

### PCI 1.0

    La version 1.0 du PCI est présentée le 22 juin 1992 et la 2.0 le 30 avril 1993. La première implémentation date de 1994 sur des cartes mères pour processeur Intel 80486. À partir de là, le bus PCI remplace rapidement les autres bus 32 bits déjà présents, comme le bus EISA ou encore le VLB.

### PCI 2.1

    La révision 2.1, incluant les spécifications pour les bus à 66 MHz, sort en 1995.

Depuis, l'évolution des spécifications du bus PCI, ainsi que celles du bus AGP et du PCI Express sont gérées par un groupe d'intérêt, le PCI Special Interest Group (en) (PCI-SIG), ouvert aux industriels.

Depuis 2004, pour les périphériques rapides (tel que les cartes graphiques), le bus PCI (ainsi que l'AGP) est remplacé par une version plus petite et plus rapide : le PCI Express.

## Spécification

La spécification du bus PCI décrit la taille du bus (dont l'espacement des conducteurs), les caractéristiques électriques, les chronogrammes du bus et les protocoles.

Il existe plusieurs variantes de ce bus :

* PCI 1.0 ;
* PCI 2.3 qui existe en deux versions :
   * bus 32 bits à 33 MHz (soit une bande passante maxi de 133 Mo/s) (la plus répandue),
   * bus 64 bits à 66 MHz (soit une bande passante maxi de 528 Mo/s), utilisé sur certaines cartes mères professionnelles ou sur des serveurs (elles font deux fois la longueur du PCI 2.2 à bus 32 bits) ;
* PCI-X : bus 64 bits à 133 MHz (soit une bande passante maxi de 1 066 Mo/s), utilisée principalement dans les machines professionnelles ;
* PCI-X 2.0 : 266 MHz (soit une bande passante maxi de 2 133 Mo/s) ;
* PCI Express : norme dérivée du PCI, destinée à le remplacer dans les ordinateurs personnels. Bien que destiné à remplacer le bus AGP (mais aussi le PCI), le PCI Express n'est pas limité au seul branchement de carte vidéo ;
* Mini PCI : dérivé du PCI 2.2 destiné à être intégré dans les ordinateurs portables.
* PCI Express 3.0 : 8 GT/s, apparu en 2004.
* PCI Express 4.0 : 16 GT/s, annoncé en 2017 et disponible sur IBM Power 9.
* PCI Express 5.0 : 32 GT/s, les spécifications sont dévoilées en 2019. Ce standard ne devrait pas arriver avant 2021.

Dans sa version purement PCI la bande passante est partagée entre tous les éléments connectés sur le bus, contrairement à ce qui se passe pour la version PCI Express où elle est dédiée pour chaque périphérique. Cette dernière est donc préférable si on veut utiliser simultanément des cartes haut débit (carte réseau gigabits, contrôleur de disque, carte graphique…).

Comme pour les processeurs, certaines cartes mères permettent de surcadencer un bus PCI à 33 MHz, en augmentant la fréquence du bus jusqu'à 37,5 MHz voire 41,5 MHz. Malgré l'écart à la norme de nombreuses cartes PCI fonctionnent encore parfaitement (et plus vite) à ces fréquences.

## Utilisations

Le PCI est généralement utilisé dans les ordinateurs personnels. Voici une liste non exhaustive de cartes d'extension généralement connectées à ce port :

* carte son ;
* Une carte graphique PCIcarte graphique - seules les anciennes cartes utilisent ce bus de nos jours, le PCI-Express offrant de bien meilleures performances pour les cartes modernes ;
* carte réseau ;
* carte contrôleur : USB, RS-232, Parallèle, Sata, IDE, IEE1394, etc.

Certains composants internes à la carte mère (le son, le réseau, etc.) sont généralement présents et utilisables sur le bus PCI. C'est le cas par exemple de contrôleurs intégrés au Northbridge, au Southbridge (cas actuels les plus fréquents : son, réseau, etc.) ou des puces dédiées, soudés directement sur la carte mère (autrefois pour le son ou bien des contrôleurs RAID supplémentaires, etc.).

