Carte mère et slots

  • Upload
    kacili

  • View
    308

  • Download
    0

Embed Size (px)

Citation preview

ContenusArticlesCarte mre Circuit intgr Slot (informatique) Chipset Processeur Front side bus Accs direct la mmoire Carte d'extension Small Computer System Interface Peripheral Component Interconnect PCI Express Accelerated Graphics Port Universal Serial Bus Disque dur 1 5 10 10 12 22 23 24 25 30 31 34 36 41

RfrencesSources et contributeurs de larticle Source des images, licences et contributeurs 57 58

Licence des articlesLicence 60

Carte mre

1

Carte mreLa carte mre est un matriel informatique (compos de circuits imprims et de ports de connexion) servant interconnecter tous les composants dun micro-ordinateur.

DescriptionElle est l'lment essentiel d'un micro-ordinateur. La carte mre (en anglais mainboard ou motherboard ) est la carte permettant la connexion de l'ensemble des lments essentiels (comme la mmoire) et optionnels (comme les priphriques externes) du micro-ordinateur.

Une carte mre

StructureAu cours de son volution, la carte mre a intgr certaines fonctions qui, avant, taient des accessoires (internes ou externes). Dans un premier temps, la mmoire cache du processeur fut intgr celle-ci, puis vinrent les cartes contrleuses de disques durs, la carte son, la carte USB, la carte rseau et mme parfois la carte graphique font maintenant partie intgrante du chipset, mais des puces peuvent venir s'ajouter pour offrir de nouvelle fonctionnalits grce aux connecteurs, dont des cartes d'interface de "priphriques" tel que l'USB 3.0, E-SATA 2.0, etc pour les chipset qui ne les gre pas nativement. On peut donc dire que toutes les cartes mres du march sont diffrentes par les options quelles proposent. Pour interconnecter toutes ces fonctions la carte mre utilise des circuits spciaux appels Chipset, composs du: northbridge, pour les prphriques "rapides" (mmoire, PCI-express, etc) southbridge pour les priphriques "lents" (PCI, disques durs et SSD, ...) qui ont pour rles de faire dialoguer le processeur les disques durs et tous les priphriques internes et externes. Au dmarrage, la carte mre doit reconnaitre tous les lements qui lui sont connects (mmoire, pripheriques, ...) et les configurer. Pour cela, elle dispose du BIOS (Basic Input/Output System), un firmware qui lui permet de tester le matriel et les priphriques prsents et de leur appliquer les paramtres de configuration ncessaires. Le BIOS cherche enfin le disque contenant le systme dexploitation et le charge en mmoire; on dit que le PC dmarre (boot en anglais). Si pour une raison quelconque un priphrique, la RAM, ou une carte dextension est dfectueuse ou ne sinitialise pas, la carte mre met un certain nombre de bip, pour indiquer le dysfonctionnement, en fonction du modle du BIOS (certaines cartes mres ASUS parlent).

Carte mre

2

Les lmentsVoici les lments qu'on peut trouver sur une carte mre, certains n'tant plus prsents sur les cartes mres. Un ou plusieurs connecteurs dalimentation lectrique : Par ces connecteurs une alimentation lectrique fournit la carte mre les diverses tensions lectriques ncessaires son fonctionnement et a celui des priphriques connects. Le connecteur du microprocesseur, Les connecteurs d'alimentation et de contrle des ventilateurs, Les connecteurs de la mmoire vive (memory slot en anglais) au nombre de 2, 4 ou 6 sur les cartes mres communes, Le chipset : Un ou plusieurs circuit lectronique, qui gre les transferts de donnes entre les diffrentes composantes de lordinateur (micro-processeur, mmoire vive, disque dur, etc.) ; Une horloge qui cadence la vitesse dexcution des instructions du microprocesseur et des priphriques internes, La mmoire, interne, conservant certaines informations importantes (comme la configuration de lordinateur, la date et lheure) mme lorsque lordinateur nest pas aliment en lectricit ainsi que sa pile ou batterie daccumulateurs ncessaire au maintient des informations lors de lextinction du micro-ordinateur (heure, date, configuration, ...)Diagramme dune carte mre typique dans les annes Le BIOS est un firmware enregistr dans une ROM ou une 2000 EPROM. Ce programme, spcifique la carte, gre linterface de bas niveau entre le micro-processeur et certains priphriques. Il rcupre, puis fait excuter, les instructions du master boot record enregistres dans une mmoire de masse (disque dur), lors du dmarrage du micro-ordinateur ;

Le bus systme (aussi appel bus interne ou Front Side Bus (FSB) en anglais) : Il relie le micro-processeur au chipset ; Le bus mmoire relie le chipset la mmoire vive ; Le bus dextension (aussi appel bus dentres/sorties) : Il relie le micro-processeur aux connecteurs dentre/sortie et aux connecteurs dextension ; Les connecteurs dentre/sortie qui respectent le plus souvent la norme PC 99 : ces connecteurs incluent : Les ports USB (Universal Serial Bus) par exemple pour la connexion de priphriques rcents (Les ports sries pour la connexion de vieux priphriques, et les ports parallles pour la connexion de vieilles imprimantes, ayant quasiment disparus en 2010) ; Les connecteurs RJ45 pour la connexion un rseau informatique ; Les connecteurs video analogique VGA et numrique DVI, pour la connexion dun cran dordinateur ; Les connecteurs audio analogiques (jack 3.5 mm) et audio numriques (SPDIF), pour la connexion dappareils audio comme des haut-parleurs ou un microphone, identifis par un code couleur ; Les connecteurs audio/video HDMI ou DisplayPort pour la connexion avec un tlviseur HD, supportant la protection des contenus numriques haute dfinition (HDCP) ; Les connecteurs Parallel ATA ou Serial ATA I (1,5 Gb/s) ou II (3 Gb/s), voire III (6 Gb/s) pour la connexion de priphriques de stockage comme les disques durs, Solid-state drive et disques optiques, et e-Sata (en connectique externe) pour la connexion de priphriques de stockage externe haut dbit ;

Carte mre Les connecteurs firewire IEEE 1394 ; Les connecteurs dextension : ce sont des rceptacles pouvant accueillir des cartes dextension (ces cartes sont utilises pour ajouter des fonctionnalits ou augmenter la performance dun micro-ordinateur, par exemple une carte graphique peut tre ajoute un ordinateur pour amliorer les performances de laffichage 3D sur l'cran). Ces ports peuvent tre des ports ISA (vieille interface), PCI (Peripheral Component Interconnect), AGP ou, plus rcent, le PCI Express, qui existe sous forme de PCI-e x1, x4, x8, et x16, ce port tant souvent occup par une carte graphique. Avec lvolution des ordinateurs, de plus en plus de fonctionnalits ont t intgres la carte mre, comme des circuits lectroniques permettant la gestion de la vido (IGP pour Integrated Graphic Processor), du son ou des rseaux (10/100Mbps/1Gbps), vitant ainsi ladjonction de cartes dextension.

3

Les fabricantsPlusieurs constructeurs se partagent le march des cartes mres tel que Abit, Albatron, Aopen, Asrock, ASUS, ATI, Biostar, Chaintech, DFI, Elite, Epox, EVGA, Foxconn, Gigabyte Technology, Intel, MSI, NVIDIA, QDI, Sapphire, Soltek, Super Micro, Tyan, Via, XFX. Certains conoivent et/ou fabriquent une ou plusieurs composantes de la carte mre tandis que dautres assemblent les lments que des partenaires ont conus et fabriqus.

Carte multi-processeursCest un type de carte mre capable daccueillir plusieurs processeur (gnralement 2, 4, 8 ou plus). Ces cartes mres multiprocesseurs disposant de plusieurs supports de micro-processeur (sockets), ce qui permet de leur enficher plusieurs micro-processeurs physiquement distincts (par opposition aux processeurs double cur). Lorsque deux processeurs sont prsents sur une carte, il y a deux manires de les grer : La manire asymtrique, o chaque processeur se voit attribuer une tche diffrente. Cette mthode nacclre pas les traitements, mais permet de confier une tche un processeur pendant que lautre est occup une tche diffrente. La manire symtrique, dite SMP (Symmetric MultiProcessing) o chaque tche est rpartie symtriquement entre les deux processeurs. Le systme dexploitation Linux fut le premier grer les architectures bi-processeur sur x86. Toutefois, la gestion de plusieurs processeurs existait bien avant sur dautres plates-formes et dautres systmes dexploitation.Une carte mre quipe de deux processeurs

Le systme Linux 2.6.x gre parfaitement les multiprocesseurs symtriques, ainsi que les architectures mmoire non-uniformment rpartie (NUMA). Certains fabricants de cartes mres fabriquent des cartes mres pouvant accueillir jusqu' 8 processeurs (en loccurrence sur socket 939 pour AMD Opteron et sur socket 604 pour Intel Xeon).

Carte mre

4

Les facteurs de formesAu fil des annes, plusieurs normes se sont imposes : 1984 AT : 305 305mm (IBM) Baby AT : 216 330mm 1995 ATX : 305 244mm (Intel) MicroATX : 244 244mm FlexATX : 229 191mm MiniATX : 284 208mm 2001 ITX : 215 195mm (VIA) MiniITX : 170 170mm NanoITX : 120 120mm PicoITX : 100 72mm 2005 BTX : 325 267mm (Intel) MicroBTX : 264 267mm PicoBTX : 203 267mm 2007 DTX : 248 203mm (AMD) mini-DTX : 170 203mm 2009 ITX mini-ITX : 170 170mm

volutivitJusqu'au milieu des annes 1990, les PC taient quips d'une carte mre sur laquelle le microprocesseur (CPU) tait insr dans un support dont il est tait trs difficile de l'enlever. Puis vinrent les cartes mres quipes d'un support du micro-processeur (socket) "libre" ou ZIF (Zero Insertion Force), permettant d'accueillir le microprocesseur de son choix (selon ses besoins et son budget). Grce ce systme (qui s'est vite gnralis et n'a plus t remis en question), il devient donc en thorie possible d'quiper son ordinateur d'un CPU plus puissant sans changer de carte mre, donc moindre cot, hlas cela n'est vrai que pour: un certain nombre de processeur compatibles. Un certain nombre de cartes mmoires compatibles. Nanmoins le systme ZIF prsente l'avantage de pouvoir remplacer le processeur assez facilement si besoin est. Donc, cette 'volutivit' a ses limites car les microprocesseurs tant de plus en plus performants, ils ncessitent immanquablement des cartes mres elles-mmes plus performantes (capables par exemple de traiter des flux de donnes de plus en plus importants). Par ailleurs, selon les fabricants, les standards des sockets utiliss changent plus ou moins frquemment avec l'arrive de nouveaux processeurs, cela acclre l'obsolescence des cartes mres.

Circuit intgr

5

Circuit intgrLe circuit intgr (CI), aussi appel puce lectronique, est un composant lectronique reproduisant une, ou plusieurs, fonction lectronique plus ou moins complexe, intgrant souvent plusieurs types de composants lectroniques de base dans un volume rduit, rendant le circuit facile mettre en uvre. Il existe une trs grande varit de ces composants diviss en deux grandes catgories : analogique et numrique.

HistoriqueJack Kilby (1923 2005)[1] est l'inventeur du circuit intgr. En 1958, cet Amricain, alors employ par Texas Instruments, crait le tout premier circuit intgr, jetant ainsi les bases du matriel informatique moderne. Pour la petite histoire, Jack Kilby, qui venait de rejoindre la compagnie, a fait cette dcouverte alors que la plupart de ses collgues profitaient de vacances organises par Texas Instruments. l'poque, Une puce sur une carte Vitale. Kilby avait tout simplement reli entre eux diffrents transistors en les cblant la main. Il ne faudra par la suite que quelques mois pour passer du stade de prototype la production de masse de puces en silicium contenant plusieurs transistors. Ces ensembles de transistors interconnects en circuits microscopiques dans un mme bloc, permettaient la ralisation de mmoires, ainsi que dunits logiques et arithmtiques. Ce concept rvolutionnaire concentrait dans un volume incroyablement rduit, un maximum de fonctions logiques, auxquelles l'extrieur accdait travers des connexions rparties la priphrie du circuit. Cette dcouverte a valu Kilby un prix Nobel de physique en 2000, alors que ce dernier sigeait toujours au directoire de Texas Instruments et dtenait plus de 60 brevets son nom.

Circuit intgr analogiqueLes composants les plus simples peuvent tre de simples transistors encapsuls les uns ct des autres sans liaison entre eux, jusqu' des assemblages complexes pouvant runir toutes les fonctions requises pour le fonctionnement d'un appareil dont il est le seul composant. Les amplificateurs oprationnels sont des reprsentants de moyenne complexit de cette grande famille o l'on retrouve aussi des composants rservs l'lectronique haute frquence et de tlcommunication. Un exemple de circuit analogique : l'ampli op LM741 et de nombreux cousins.

Circuit intgr numriqueLes circuits intgrs numriques les plus simples sont des portes logiques (et, ou, non), les plus complexes sont les microprocesseurs et les plus denses sont les mmoires. On trouve de nombreux circuits intgrs ddis des applications spcifiques (ASIC pour Application Specific Integrated Circuit), notamment pour le traitement du signal (traitement d'image, compression vido...) on parle alors de DSP (pour Digital Signal Processor). Une famille importante de circuits intgrs est celle des composants de logique programmable (FPGA, CPLD). Ces composants sont amens remplacer les portes logiques simples en raison de leur grande densit d'intgration.

Circuit intgr

6

CompositionLe botierLes circuits intgrs se prsentent gnralement sous la forme de botiers pleins rectangulaires, noirs, quips sur un ou plusieurs cts voire sur une face, de 'pattes' (appeles aussi broches ou pins) permettant d'tablir les connexions lectriques avec l'extrieur du botier. Ces composants sont brass, (soud, terme impropre) sur un circuit imprim, ou enfichs, des fins de dmontage, dans des supports eux-mmes brass sur un circuit imprim. Sur le botier peuvent etre peint : le logo du fabricant, une rfrence qui permet d'identifier le composant, un code correspondant des variantes ou rvisions, la date de fabrication (4 chiffres cods AASS : anne et semaine). Les progrs de l'intgration sont tels que les circuits intgrs peuvent devenir trs petits. Leur taille ne dpend plus gure que de la capacit du botier dissiper la chaleur produite par effet Joule et, bien souvent du nombre, de la taille des broches de sortie du circuit ainsi que de leur espacement. Diffrents types de botiers permettent d'adapter le circuit intgr son environnement de destination. Le format le plus ancien a pour nom Dual Inline Package (DIP ou DIL) qui se traduit sommairement par botier avec deux lignes . La miniaturisation aidant, les circuits dits de surface ont fait leur apparition : le format SO. Bien d'autres types existent :Un microcontrleur botier DIP.

Circuits intgrs botier DIP.

Le DieLe die est la partie lmentaire, de forme rectangulaire, reproduite lidentique laide dune matrice sur une tranche de silicium en cours de fabrication. Il correspond a un circuit intgr qui sera ensuite dcoup et que lon appellera une puce avant quelle ne soit encapsule pour donner un circuit intgr complet, prt tre mont sur une carte. Le Die d'un circuit intgr comprend sous des formes miniaturises principalement des transistors, des diodes, des rsistances, des condensateurs, plus rarement des inductances, car elles sont plus difficilement miniaturisables.

chelle d'intgrationL'chelle d'intgration dfinit le nombre de portes par botier : SSI (small scale integration) petite : infrieur 12 MSI (medium) moyenne : 12 99 LSI (large) grande : 100 9999 VLSI (very large) trs grande : 10000 99999 ULSI (ultra large) ultra grande : 100000 et plus

Un die de circuit intgr VLSI

Circuit intgr Ces distinctions ont peu peu perdu de leur utilit avec la croissance exponentielle du nombre de portes. Aujourd'hui plusieurs centaines de millions de transistors (plusieurs dizaines de millions de portes) reprsentent un chiffre normal (pour un microprocesseur ou un circuit intgr graphique haut de gamme). Afin de parvenir de tels niveaux d'intgrations, un flot de conception complexe est utilis.

7

La technique de fabrication la plus couranteLa fabrication d'un circuit intgr est un procd complexe dont la tendance est se compliquer de plus en plus. Le motif de base est le transistor, et ce sont ensuite les interconnexions mtalliques entre les transistors qui ralisent la fonction particulire du circuit. L'aluminium est souvent employ dans ce but, mais une technologie plus performante permet l'emploi du cuivre, qui conduit mieux llectricit et la chaleur On utilise parfois du silicium polycristallin, galement conducteur, notamment pour la grille du transistor.

Des microprocesseurs sur la tranche de silicium (wafer) qui sert leur fabrication.

Matire premireLa matire premire de base habituellement utilise pour fabriquer les circuits intgrs est le silicium, nanmoins, d'autres matriaux sont parfois employs, comme le germanium ou l'arsniure de gallium. Le silicium est un semi-conducteur dans sa forme monocristalline. Ce matriau doit tre pur 99,99 %. On fabrique d'abord un barreau cylindrique de silicium en le cristallisant trs lentement. Ce barreau est ensuite dcoup pour tre utilis sous forme de galettes de 100 800m d'paisseur et ayant jusqu' 300mm de diamtre, appel wafer (galette, en anglais). Un wafer va supporter de nombreux circuits intgrs.

La photolithogravureLa photolithographie, dsigne l'ensemble des oprations permettant de dlimiter l'extension latrale des matriaux sur la surface d'un substrat semi-conducteur, dont la structure est plus ou moins bidimensionnelle car base sur l'empilement de couches la surface d'une plaquette de silicium. Les motifs deviendront par la suite les diffrentes zones actives des composants lectroniques (exemple : contact, drain...) ou les jonctions entre ces composants. Ce procd est actuellement le plus rpandu.

Circuit intgr tapes de fabrication Le nombre d'tapes de la fabrication des circuits intgrs a cr considrablement depuis 20 ans. Il peut atteindre plusieurs dizaines pour certaines productions spcialises. Toutefois, on retrouve peu prs toujours la mme srie d'tapes : Prparation de la couche : on expose le wafer du dioxygne pur aprs chauffage pour fabriquer une couche d'oxyde (isolant) en surface, ensuite le wafer est recouvert d'un vernis photosensible. Transfert : on transfre le dessin du circuit reproduire sur la surface photosensible l'aide d'un masque, comme pour la peinture au pochoir, en Le circuit intgr d'une puce Intel 8742 l'exposant aux ultraviolets, (ou aux rayons X, pour les gravures les plus fines). Le vernis non soumis aux rayonnements est dissout grce un solvant spcifique. Gravure : l'oxyde de silicium est protg par le vernis aux endroits exposs aux ultraviolets. Un agent corrosif va creuser la couche d'oxyde aux endroits non protgs. Dopage : on dissout ensuite le vernis expos avec un autre solvant, et des ions mtalliques, appels dopants, sont introduits dans le silicium expos l o l'oxyde a t creus, afin de le rendre conducteur. Couche suivante : l'opration est renouvele pour crer les couches successives du circuit intgr ou du microprocesseur (jusqu' 20). On dtermine la qualit de la gravure selon le plus petit motif qu'il est possible de graver, en l'occurrence la largeur de la grille du transistor MOS. En 2004, les gravures les plus fines en production sont de 0,13m (ou 130nm) et 90nm. En 2006, les gravures les plus fines en production sont de 60nm et 30nm. Phases finales On dpose une pellicule mtallique aux endroits o le circuit devra tre en contact avec les broches de sortie. Les circuits intgrs sont tests directement sur le wafer. Les puces dfectueuses sont marques (inking). Il s'agit de lEWS Le wafer est finalement dcoup au moyen d'une scie circulaire au diamant d'une paisseur de 0.02mm ou via un procd de dcoupe laser pour obtenir des die. Les puces ainsi obtenues sont insres dans un botier individuel de protection et relies aux broches qui vont leur permettre de communiquer avec l'extrieur. Des tests de validation svres et individuels sont alors entrepris pour qualifier les microprocesseurs, en frquence et en temprature.

8

Technologies spcialisesCertaines techniques sont aussi utilises pour des circuits intgrs de type un peu spcialis.

Silicium sur isolantLe principal dfaut du CMOS rside dans sa capacitance. Cest--dire la capacit interne et parasite qui ralentit la vitesse de commutation dun transistor. la priphrie immdiate de la source et du drain, on observe une forte accumulation de charges lectriques. Ces charges rsultent de la diffrence de potentiel entre le substrat silicium et

Circuit intgr ces parties dpi-couche (cest--dire de la couche de surface, proche des zones sources et drains) ionises. partir des annes 1990, on sest intress une solution appele SOI ou (Silicon On Insulator, cest--dire silicium sur couche isolante) permettant de rduire ces effets nuisibles. La technologie (silicon on insulator - SOI) consiste introduire une couche isolante lectriquement sous les transistors en profondeur du silicium. Cela rduit les pertes d'lectrons dans le circuit, sources de consommation statique d'nergie. Le silicium ct des transistors n'est plus fix un potentiel donn, ce qui introduit des performances intressantes (augmentation de vitesse pour les portes CMOS complexes).

9

Silicium sur saphirDans certains cas, le substrat en silicium monocristallin est purement et simplement abandonn. L'avantage intrinsque d'utiliser du silicium (l'arrangement des atomes de silicium sur le substrat est naturellement plus rgulier) peut alors tre compens pour des applications spcialises. C'est ainsi que le silicium sur saphir (substrat en saphir cristallin) est utilis dans les applications o le circuit intgr sera exploit dans un environnement spatial ou soumis d'intenses radiations qui rendraient les substrats de silicium inutilisables.

Arsniure de galliumOn ralise galement des semi-conducteurs base d'arsniure de gallium. Mme si ce matriau a eu l'antriorit sur le silicium, il avait quasiment disparu de l'industrie. Aujourd'hui les avantages intrinsques de ce matriau en termes de vitesse de commutation, ainsi que ses performances suprieures celles du silicium dans le domaine de l'opto-lectronique, lui redonnent une nouvelle jeunesse dans le domaine des hautes frquences et l'on voit rapparatre une fabrication industrielle sur la base de cette technologie.

Dveloppements futursL'industrie des circuits intgrs est une de celles qui voluent le plus rapidement de l'histoire des technologies. Elle explore continuellement de nouvelles technologies. Parmi celles qui semblent avoir un avenir prometteur il faut compter : les substrats en diamant[2] , dont on attend beaucoup en termes de refroidissement[3] .

Notes et rfrences[1] Jack Kilby (http:/ / www. lemonde. fr/ carnet/ article/ 2005/ 06/ 22/ le-prix-nobel-jack-kilby-inventeur-du-circuit-integre-est-mort_665085_3382. html) [2] Gahlin, et al, The Effects of Compressive Stresses on the Abrasion of Diamond Coatings, Elsevier Science, 1996 , p.226-233 [3] Fuji S. et al, The Diamond Wafer for Saw Application, IEEE Ultrasonics Symposium Proceedings, US., New York, 1997 (ISBN978-0-7803-4154-8), p.183-186

Slot (informatique)

10

Slot (informatique)Dans un ordinateur, un slot (de l'anglais) est une fente dans laquelle on insre une carte d'extension ou une barrette de mmoire, voire certains processeurs conditionns sous forme de cartouche. Le composant doit tre enfonc (enfich) dans le connecteur de la carte mre pour tre maintenu en place. La communication entre le composant enfich et les autres composants se fait alors travers un bus informatique. Selon le type de composant accueilli, on peut utiliser d'autres mots pour designer des slots: un port dextension ou un connecteur d'extension pour enficher une carte d'extension un support SIMM, DIMM ou SO-DIMM pour enficher une barrette de mmoire vive un slot pour enficher un processeur, ne pas confondre avec un socket car ils n'ont pas le mme aspect

Ports d'extension PCI Express et PCI (dernier, en bas)

Slot mmoire SIMM

Slot 1 pour processeur Pentium II

Slot A pour processeur Athlon

ChipsetUn chipset (de l'anglais, signifiant littralement ensemble de puces (lectroniques)) est un jeu de composants lectroniques intgr dans un circuit intgr prprogramm permettant de grer les flux de donnes numriques entre le ou les processeur(s), la mmoire et les priphriques. On en trouve dans des appareils lectroniques de type micro-ordinateur, console de jeux vido, tlphone mobile, appareil photo numrique, GPS, etc.

Caractristiques techniquesUn chipset pour micro-ordinateur se trouve sur la carte mre. Il est spcifiquement conu pour un type de microprocesseur et joue un rle important dans la souplesse des changes d'une mme carte. Les performances globales de l'ordinateur dpendent donc en grande partie des chipsets et de celle du microprocesseur. Son rle est de grer des flux de donnes numriques entre le microprocesseur et les divers composants et sous ensembles de composants de la carte mre, bus informatique, mmoire vive (RAM), accs direct la mmoire (DMA), Bus IDE ou Serial ATA, PCI, AGP, disque dur, rseau informatique, port srie, port parallle, USB, FireWire, clavier, souris, Entres-Sorties, carte graphique, carte son, Hyper-Threading, Front side bus, lecteur de disquette et les entres-sorties en gnral, etc. Il est souvent dcompos en deux puces : le Northbridge ou SPP et le Southbridge ou MCP. Le fabricant du chipset peut tre diffrent du fabricant de la carte mre ou de celui du microprocesseur mais doit tre compatible. Les capacits maximales d'volution d'un compatible PC sont souvent directement lies aux chipsets qu'il contient (rsolution graphique maximale, nombre de couleurs maximal, taille mmoire maximale, taille disque dur maximale, type de barrette mmoire RAM gre maximale, vitesse maximale des bus, etc.). Ce terme a aussi t utilis dans les annes 1980 et annes 1990 pour dsigner les puces audio et graphique dans les ordinateurs ou les consoles de jeux, avec par exemple le chipset d'origine de l'Amiga (Original Amiga chipset) ou celui du Sega System 16. Certains chipsets graphiques actuels comme les nForce de NVIDIA intgrent des fonctionnalits leur permettant de remplacer totalement une carte graphique (chipset vido). La mmoire graphique

Chipset du chipset vido tant gnralement prise sur la mmoire vive de l'ordinateur, c'est pour cela que lorsqu'on installe par exemple 512Mio de mmoire vive, le systme n'en dtecte que 448Mio (64Mio tant ddi la mmoire graphique). Nanmoins et ce, de plus en plus souvent, la mmoire vive est partage et non plus ddie.

11

Principaux fabricants de chipsets compatible pour PC dans le monde Intel VIA Technologies (Cyrix) Silicon Integrated Systems nVIDIA

Une carte mre de compatible PC x86 quipe de chipset

Carte graphique gre par un ou plusieurs chipsets

Processeur

12

ProcesseurLe processeur, ou CPU (de l'anglais Central Processing Unit, Unit centrale de traitement ), est le composant de l'ordinateur qui excute les programmes informatiques. Avec la mmoire notamment, c'est l'un des composants qui existent depuis les premiers ordinateurs et qui sont prsents dans tous les ordinateurs. Un processeur construit en un seul circuit intgr est un microprocesseur. L'invention du transistor en 1948 a ouvert la voie la miniaturisation des composants lectroniques. Les processeurs des dbuts taient conus spcifiquement pour un La puce d'un microprocesseur Intel 80486DX2 dans son botier (taille relle : 12 6.75mm) ordinateur d'un type donn. Cette mthode coteuse de conception des processeurs pour une application spcifique a conduit au dveloppement de la production de masse de processeurs qui conviennent pour un ou plusieurs usages. Cette tendance la standardisation qui dbuta dans le domaine des ordinateurs centraux (mainframes transistors discrets et mini-ordinateurs) a connu une acclration rapide avec l'avnement des circuits intgrs. Les circuits intgrs ont permis la miniaturisation des processeurs. La miniaturisation et la standardisation des processeurs ont conduit leur diffusion dans la vie moderne bien au-del des usages des machines programmables ddies.

MicroprocesseursL'introduction du microprocesseur dans les annes 1970 a marqu de manire significative la conception et l'implmentation des units centrales de traitement. Depuis l'introduction du premier microprocesseur (Intel 4004) en 1971 et du premier microprocesseur employ couramment (Intel 8080) en 1974, cette classe de processeurs a presque totalement dpass toutes les autres mthodes d'implmentation d'unit centrale de traitement. Les fabricants d'ordinateurs centraux (mainframe et miniordinateurs) de l'poque ont lanc leurs propres programmes de dveloppement de circuits intgrs pour mettre niveau les architectures anciennes de leurs ordinateurs et Intel 80486DX2 microprocesseur en botier ont par la suite produit des microprocesseurs jeu d'instructions cramique PGA compatible en assurant la compatibilit ascendante avec leurs anciens modles. Les gnrations prcdentes des units centrales de traitement comportaient un assemblage de composants discrets et de nombreux circuits faiblement intgrs sur une ou plusieurs cartes lectroniques. Les microprocesseurs sont construits avec un trs petit nombre de circuits trs fortement intgrs (ULSI), habituellement un seul. Les microprocesseurs sont implments sur une seule puce lectronique, donc de dimensions rduites, ce qui veut dire des temps de commutation plus courts lis des facteurs physiques comme par exemple la diminution de la capacit parasite des portes. Ceci a permis aux microprocesseurs synchrones d'augmenter leur frquence de base de quelques dizaines de mgahertz plusieurs gigahertz. De plus, mesure que la capacit fabriquer des transistors extrmement petits sur un circuit intgr a augment, la complexit et le nombre de transistors dans un seul processeur ont considrablement cr. Cette tendance largement observe est dcrite par la loi de Moore, qui s'est avre tre jusqu'ici un facteur prdictif assez prcis de la croissance de la complexit des processeurs (et de tout autre circuit intgr).

Processeur Les processeurs multi curs (multicores) rcents comportent maintenant plusieurs curs dans un seul circuit intgr. Leur efficacit dpend grandement de la topologie d'interconnexion entre les curs. De nouvelles approches, comme la superposition de la mmoire et du cur de processeur (memory stacking), sont l'tude, et devraient conduire un nouvel accroissement des performances. En se basant sur les tendances des dix dernires annes, les performances des processeurs devraient atteindre le Ptaflop, vers 2010 pour les serveurs, et l'horizon 2030 dans les PC.[rf.ncessaire] Dbut juin 2008, le supercalculateur militaire IBM Roadrunner est le premier franchir cette barre symbolique du Ptaflop. Puis, en novembre 2008, c'est au tour du supercalculateur Jaguar de Cray. En avril 2009, ce sont les deux seuls supercalculateurs avoir dpass le Petaflop. Tandis que la complexit, la taille, la construction, et la forme gnrale des processeurs ont fortement volu au cours des soixante dernires annes, la conception et la fonction de base n'ont pas beaucoup chang. Presque tous les processeurs communs d'aujourd'hui peuvent tre dcrits trs prcisment comme machines programme enregistr de von Neumann. Alors que la loi de Moore, mentionne ci-dessus, continue de se vrifier, des questions ont surgi au sujet des limites de la technologie des circuits intgrs transistors. La miniaturisation des portes lectroniques est si importante que les effets de phnomnes comme l'lectromigration (dgradation progressive des interconnexions mtalliques entranant une diminution de la fiabilit des circuits intgrs) et les courants de fuite (leur importance augmente avec la rduction des dimensions des circuits intgrs ; ils sont l'origine d'une consommation d'nergie lectrique pnalisante), auparavant ngligeables, deviennent de plus en plus significatifs. Ces nouveaux problmes sont parmi les nombreux facteurs conduisant les chercheurs tudier, d'une part, de nouvelles technologies de traitement telles que l'ordinateur quantique ou l'usage du calcul parallle et, d'autre part, d'autres mthodes d'utilisation du modle classique de von Neumann.

13

FonctionnementComposition d'un processeurLes parties essentielles dun processeur sont : lUnit Arithmtique et Logique (UAL, en anglais Arithmetic and Logical Unit - ALU), qui prend en charge les calculs arithmtiques lmentaires et les tests ; l'unit de contrle ou squenceur, qui permet de synchroniser les diffrents lments du processeur. En particulier, il initialise les registres lors du dmarrage de la machine et il gre les interruptions ; les registres, qui sont des mmoires de petite taille (quelques octets), suffisamment rapides pour que l'UAL puisse manipuler leur contenu chaque cycle de lhorloge. Un certain nombre de registres sont communs la plupart des processeurs : Compteur ordinal : ce registre contient ladresse mmoire de linstruction en cours dexcution ; accumulateur : ce registre est utilis pour stocker les donnes en cours de traitement par lUAL ; registre dadresses : il contient toujours ladresse de la prochaine information lire par lUAL, soit la suite de linstruction en cours, soit la prochaine instruction ; registre dinstructions : il contient linstruction en cours de traitement ;

Schma de principe d'un processeur 32 bits

Processeur registre dtat : il sert stocker le contexte du processeur, ce qui veut dire que les diffrents bits de ce registre sont des drapeaux (flags) servant stocker des informations concernant le rsultat de la dernire instruction excute ; pointeurs de pile : ce type de registre, dont le nombre varie en fonction du type de processeur, contient ladresse du sommet de la pile (ou des piles) ; registres gnraux : ces registres sont disponibles pour les calculs ; lhorloge qui synchronise toutes les actions de lunit centrale. Elle est prsente dans les processeurs synchrones, et absente des processeurs asynchrones et des processeurs autosynchrones ; l'unit dentre-sortie, qui prend en charge la communication avec la mmoire de lordinateur ou la transmission des ordres destins piloter ses processeurs spcialiss, permettant au processeur daccder aux priphriques de lordinateur. Les processeurs actuels intgrent galement des lments plus complexes : plusieurs UAL, ce qui permet de traiter plusieurs instructions en mme temps. L'architecture superscalaire, en particulier, permet de disposer des UAL en parallle, chaque UAL pouvant excuter une instruction indpendamment de l'autre ; l'architecture pipeline permet de dcouper temporellement les traitements effectuer. Cest une technique qui vient du monde des supercalculateurs ; une unit de prdiction de saut, qui permet au processeur danticiper un saut dans le droulement dun programme, permettant dviter dattendre la valeur dfinitive dadresse du saut. Cela permet de mieux remplir le pipeline ; une unit de calcul en virgule flottante (en anglais Floating Point Unit - FPU), qui permet dacclrer les calculs sur des nombres rels cods en virgule flottante ; la mmoire cache, qui permet dacclrer les traitements, en diminuant les temps d'accs la mmoire. Ces mmoires tampons sont en effet beaucoup plus rapides que la RAM et ralentissent moins le CPU. Le cache instructions reoit les prochaines instructions excuter, le cache donnes manipule les donnes. Parfois, un seul cache unifi est utilis pour le code et les donnes. Plusieurs niveaux de caches peuvent coexister, on les dsigne souvent sous les noms de L1, L2 ou L3. Dans les processeurs volus, des units spciales du processeur sont dvolues la recherche, par des moyens statistiques et/ou prdictifs, des prochains accs en mmoire centrale. Un processeur est dfini par : la largeur de ses registres internes de manipulation de donnes (8, 16, 32, 64, 128) bits ; la cadence de son horloge exprime en MHz (mgahertz) ou GHz (gigahertz) ; le nombre de noyaux de calcul (core) ; son jeu d'instructions (ISA en anglais, Instructions Set Architecture) dpendant de la famille (CISC, RISC, etc) ; sa finesse de gravure exprime en nm (nanomtres) et sa microarchitecture.

14

Mais ce qui caractrise principalement un processeur est la famille laquelle il appartient : CISC (Complex Instruction Set Computer : choix d'instructions aussi proches que possible d'un langage de haut niveau) ; RISC ( Reduced Instruction Set Computer : choix d'instructions plus simples et d'une structure permettant une excution trs rapide) ; VLIW (Very Long Instruction Word) ; DSP (Digital Signal Processor). Mme si cette dernire famille (DSP) est relativement spcifique. En effet un processeur est un composant programmable et est donc a priori capable de raliser tout type de programme. Toutefois, dans un souci d'optimisation, des processeurs spcialiss sont conus et adapts certains types de calculs (3D, son, etc.). Les DSP sont des processeurs spcialiss pour les calculs lis au traitement de signaux. Par exemple, il n'est pas rare de voir implmenter des Transformes de Fourier dans un DSP. Un processeur possde trois types de bus :

Processeur un bus de donnes, dfinit la taille des donnes manipulables (indpendamment de la taille des registres internes) ; un bus d'adresse dfinit le nombre de cases mmoire accessibles ; un bus de contrle dfinit la gestion du processeur IRQ, RESET etc.

15

Les oprations du processeurLe rle fondamental de la plupart des units centrales de traitement, indpendamment de la forme physique qu'elles prennent, est d'excuter une srie d'instructions stockes appeles programme . Les instructions (parfois dcomposes en micro instructions) et les donnes transmises au processeur sont exprimes en mots binaires (code machine). Elles sont gnralement stockes dans la mmoire. Le squenceur ordonne la lecture du contenu de la mmoire et la constitution des mots prsentes l'ALU qui les interprte. Lensemble des instructions et des donnes constitue un programme. Le langage le plus proche du code machine tout en restant lisible par des humains est le langage dassemblage, aussi appel langage assembleur (forme francise du mot anglais assembler ). Toutefois, linformatique a dvelopp toute une srie de langages, dits de haut niveau (comme le Pascal, C, C++, Fortran, Ada, etc), destins simplifier lcriture des programmes. Les oprations dcrites ici sont conformes l'architecture de von Neumann. Le programme est reprsent par une srie d'instructions qui ralisent des oprations en liaison avec la mmoire vive de l'ordinateur. Il y a quatre tapes que presque toutes les architectures von Neumann utilisent : fetch - recherche de l'instruction ; decode - dcodage de l'instruction (opration et oprandes) ; execute - excution de l'opration ; writeback - criture du rsultat.

La premire tape, FETCH (recherche), consiste rechercher une instruction dans la mmoire vive de l'ordinateur. L'emplacement dans la mmoire est dtermin par le compteur de programme (PC), qui stocke l'adresse de la prochaine instruction dans la mmoire de programme. Aprs qu'une instruction a t recherche, le PC est Le diagramme montre comment une instruction incrment par la longueur du mot d'instruction. Dans le cas de mot de de MIPS32 est dcode. longueur constante simple, c'est toujours le mme nombre. Par exemple, un mot de 32 bits de longueur constante qui emploie des mots de 8 bits de mmoire incrmenterait toujours le PC par 4 (except dans le cas des sauts). Le jeu d'instructions qui emploie des instructions de longueurs variables comme l'x86, incrmentent le PC par le nombre de mots de mmoire correspondant la dernire longueur d'instruction. En outre, dans des units centrales de traitement plus complexes, l'incrmentation du PC ne se produit pas ncessairement la fin de l'excution d'instruction. C'est particulirement le cas dans des architectures fortement paralllises et superscalaires. Souvent, la recherche de l'instruction doit tre opre dans des mmoires lentes, ralentissant l'unit centrale de traitement qui attend l'instruction. Cette question est en grande partie rsolue dans les processeurs modernes par l'utilisation de caches et d'architectures pipelines. L'instruction que le processeur recherche en mmoire est utilise pour dterminer ce que le CPU doit faire. Dans l'tape DECODE (dcodage), l'instruction est dcoupe en plusieurs parties telles qu'elles puissent tre utilises par d'autres parties du processeur. La faon dont la valeur de l'instruction est interprte est dfinie par le jeu d'instructions (ISA) du processeur[1] . Souvent, une partie d'une instruction, appele opcode (code d'opration), indique quelle opration est faire, par exemple une addition. Les parties restantes de l'instruction comportent habituellement les autres informations ncessaires l'excution de l'instruction comme par exemples les oprandes de l'addition. Ces oprandes peuvent prendre une valeur constante, appele valeur immdiate, ou bien contenir

Processeur l'emplacement o retrouver (dans un registre ou une adresse mmoire) la valeur de l'oprande, suivant le mode d'adressage utilis. Dans les conceptions anciennes, les parties du processeur responsables du dcodage taient fixes et non modifiables car elles taient codes dans les circuits. Dans les processeurs plus rcents, un microprogramme est souvent utilis pour traduire les instructions en diffrents ordres. Ce microprogramme est parfois modifiable pour changer la faon dont le CPU dcode les instructions, mme aprs sa fabrication. Aprs les tapes de recherche et de dcodage arrive l'tape EXECUTE (excution) de l'instruction. Au cours de cette tape, diffrentes parties du processeur sont mises en relation pour raliser l'opration souhaite. Par exemple, pour une addition, l'unit arithmtique et logique (ALU) sera connecte des entres et des sorties. Les entres prsentent les nombres additionner et les sorties contiennent la somme finale. L'ALU contient la circuiterie pour raliser des oprations d'arithmtique et de logique simples sur les entres (addition, opration sur les bits). Si le rsultat d'une addition est trop grand pour tre cod par le processeur, un signal de dbordement est positionn dans un registre d'tat (voir ci-dessous le chapitre sur le codage des nombres). La dernire tape WRITEBACK (criture du rsultat), crit tout simplement les rsultats de l'tape d'excution en mmoire. Trs souvent, les rsultats sont crits dans un registre interne au processeur pour bnficier de temps d'accs trs courts pour les instructions suivantes. Dans d'autres cas, les rsultats sont crits plus lentement dans des mmoires RAM, donc moindre cot et acceptant des codages de nombres plus grands.

16

Diagramme fonctionnel d'un processeur simple

Certains types d'instructions manipulent le compteur de programme plutt que de produire directement des donnes de rsultat. Ces instructions sont appeles des sauts ( jumps ) et permettent de raliser des boucles ( loops ), des programmes excution conditionnelle ou des fonctions (sous-programmes) dans des programmes[2] . Beaucoup d'instructions servent aussi changer l'tat de drapeaux ( flags ) dans un registre d'tat. Ces tats peuvent tre utiliss pour conditionner le comportement d'un programme, puisqu'ils indiquent souvent la fin d'excution de diffrentes oprations. Par exemple, une instruction de comparaison entre deux nombres va positionner un drapeau dans un registre d'tat suivant le rsultat de la comparaison. Ce drapeau peut alors tre rutilis par une instruction de saut pour poursuivre le droulement du programme. Aprs l'excution de l'instruction et l'criture des rsultats, tout le processus se rpte, le prochain cycle d'instructions recherche la squence d'instruction suivante puisque le compteur de programme avait t incrment. Si l'instruction prcdente tait un saut, c'est l'adresse de destination du saut qui est enregistre dans le compteur de programme. Dans des processeurs plus complexes, plusieurs instructions peuvent tre recherches, dcodes et excutes simultanment, on parle alors d'architecture pipeline, aujourd'hui communment utilise dans les quipements lectroniques.

Vitesse de traitementLa vitesse de traitement d'un processeur est encore parfois exprime en MIPS (million d'instructions par seconde) ou en Mgaflops (millions de floating-point operations per second) pour la partie virgule flottante, dite FPU (Floating Point Unit). Pourtant, aujourd'hui, les processeurs sont bass sur diffrentes architectures et techniques de paralllisation des traitements qui ne permettent plus de dterminer simplement leurs performances. Des programmes spcifiques d'valuation des performances (benchmarks) ont t mis au point pour obtenir des comparatifs des temps d'excution de programmes rels.

Processeur

17

Conception et implmentationLe codage des nombresLa manire dont un CPU reprsente les nombres est un choix de conception qui affecte de faon profonde son fonctionnement de base. Certains des ordinateurs les plus anciens utilisaient un modle lectrique du systme numrique dcimal (base 10). Certains autres ont fait le choix de systmes numriques plus exotiques comme les systmes trinaires (base 3). Les processeurs modernes reprsentent les nombres dans le systme binaire (base 2) dans lequel chacun des chiffres est reprsent par une grandeur physique qui ne peut prendre que deux valeurs comme une tension lectrique haute ou basse . Le concept physique de tension lectrique est analogique par nature car elle peut prendre une infinit de valeurs. Pour les besoins de reprsentation physique des nombres binaires, les valeurs des tensions lectriques sont dfinies comme des tats 1 et 0 . Ces tats rsultent des paramtres oprationnels des lments de commutation qui composent le processeur comme les niveaux de seuil des transistors. En plus du systme de reprsentation des nombres, il faut s'intresser la taille et la prcision des nombres qu'un processeur peut manipuler. Dans le cas d'un processeur binaire, un bit correspond une position particulire dans les nombres que le processeur peut grer. Le nombre de bits (chiffres) qu'un processeur utilise pour reprsenter un Le microprocesseur 6502 en technologie MOS nombre est souvent appel taille du mot ( word size , bit width dans un botier dual in-line une conception trs , data path width ) ou prcision entire lorsqu'il s'agit de rpandue. nombres entiers ( l'oppos des nombres flottants). Ce nombre diffre suivant les architectures, et souvent, suivant les diffrents modules d'un mme processeur. Par exemple, un CPU 8-bit gre des nombres qui peuvent tre reprsents par huit chiffres binaires (chaque chiffre pouvant prendre deux valeurs), soit 28 ou 256 valeurs discrtes. En consquence, la taille du nombre entier dfinit une limite la plage des nombres entiers que le logiciel excut par le processeur pourra utiliser. La taille du nombre entier affecte galement le nombre d'emplacements mmoire que le processeur peut adresser (localiser). Par exemple, si un processeur binaire utilise 32 bits pour reprsenter une adresse mmoire et que chaque adresse mmoire est reprsente par un octet (8 bits), la taille mmoire maximum qui peut tre adresse par ce processeur est de 232 octets, ou 4 Go. C'est une vision trs simpliste de l'espace d'adressage d'un processeur et beaucoup de conceptions utilisent des types d'adressages bien plus complexes, comme la pagination, pour adresser plus de mmoire que la taille du nombre entier le leur permettrait avec un espace d'adressage plat. De plus grandes plages de nombres entiers ncessitent plus de structures lmentaires pour grer les chiffres additionnels, conduisant plus de complexit, des dimensions plus importantes, plus de consommation d'nergie et des cots plus levs. Il n'est donc pas rare de rencontrer des microcontrleurs 4-bit ou 8-bit dans des applications modernes, mme si des processeurs 16-bit, 32-bit, 64-bit et mme 128-bit sont disponibles. Pour bnficier des avantages la fois des tailles d'entier courtes et longues, beaucoup de CPU sont conus avec diffrentes largeurs d'entiers dans diffrentes parties du composant. Par exemple, le System/370 d'IBM est dot d'un CPU nativement 32-bit mais qui utilise une unit de calcul flottant (FPU) de 128-bit de prcision pour atteindre une plus grande prcision dans les calculs avec les nombres flottants. Beaucoup des processeurs les plus rcents utilisent une combinaison comparable de taille de nombres, spcialement lorsque le processeur est ddi un usage gnraliste pour lequel il est ncessaire de trouver le juste quilibre entre les capacits traiter les nombres entiers et les nombres flottants.

Processeur

18

Le signal d'horlogeLa plupart des processeurs, et plus largement la plupart des circuits de logique squentielle, ont un fonctionnement synchrone par nature[3] . Cela veut dire qu'ils sont conus et fonctionnent au rythme d'un signal de synchronisation. Ce signal est le signal d'horloge . Il prend souvent la forme d'une onde carre priodique. En calculant le temps maximum que prend le signal lectrique pour se propager dans les diffrentes branches des circuits du processeur, le concepteur peut slectionner la priode approprie du signal d'horloge. Cette priode doit tre suprieure au temps que prend le signal pour se propager dans le pire des cas. En fixant la priode de l'horloge une valeur bien au-dessus du pire des cas de temps de propagation, il est possible de concevoir entirement le processeur et la faon dont il dplace les donnes autour des fronts montants ou descendants du signal d'horloge. Ceci a pour avantage de simplifier significativement le processeur tant du point de vue de sa conception que de celui du nombre de ses composants. Par contre, ceci a pour inconvnient le ralentissement du processeur puisque sa vitesse doit s'adapter celle de son lment le plus lent, mme si d'autres parties sont beaucoup plus rapides. Ces limitations sont largement compenses par diffrentes mthodes d'accroissement du paralllisme des processeurs (voir ci-dessous). Les amliorations d'architecture ne peuvent pas, elles seules, rsoudre tous les inconvnients des processeurs globalement synchrones. Par exemple, un signal d'horloge est sujet des retards comme tous les autres signaux lectriques. Les frquences d'horloge plus leves que l'on trouve dans les processeurs la complexit croissante engendrent des difficults pour conserver le signal d'horloge en phase (synchronis) travers toute l'unit centrale de traitement. En consquence, beaucoup des processeurs d'aujourd'hui ncessitent la fourniture de plusieurs signaux d'horloge identiques de faon viter que le retard d'un seul signal ne puisse tre la cause d'un dysfonctionnement du processeur. La forte quantit de chaleur qui doit tre dissipe par le processeur constitue un autre problme majeur d l'accroissement des frquences d'horloge. Les changements d'tat frquents de l'horloge font commuter un grand nombre de composants, qu'ils soient ou non utiliss cet instant. En gnral, les composants qui commutent utilisent plus d'nergie que ceux qui restent dans un tat statique. ainsi, plus les frquences d'horloge augmentent et plus la dissipation de chaleur en fait autant, ce qui fait que les processeurs requirent des solutions de refroidissement plus efficaces. La mthode dite de clock gating permet de grer la commutation involontaire de composants en inhibant le signal d'horloge sur les lments choisis mais cette pratique est difficile implmenter et reste rserve aux besoins de circuits trs faible consommation. Une autre mthode consiste abandonner le signal global d'horloge, la consommation d'nergie et la dissipation thermique sont rduites mais la conception du circuit devient plus complexe. On parle alors de processeurs asynchrones. Certaines conceptions ont t raliss sans signal global d'horloge, utilisant par exemple les jeux d'instructions ARM ou MIPS, d'autres ne prsentent que des parties asynchrones comme par exemple l'utilisation d'une UAL asynchrone avec un pipelining superscalaire pour atteindre des gains de performance dans les calculs arithmtiques. De tels processeurs sont actuellement plutt rservs aux applications embarques (ordinateurs de poche, consoles de jeux...).

ParalllismeLa description du mode de fonctionnement de base d'un processeur prsente au chapitre prcdent prsente la forme la plus simple que peut prendre un CPU. Ce type de processeur, appel subscalaire, excute une instruction sur un ou deux champs de donnes la fois.

Modle de processeur subscalaire : il faut 15 cycles pour excuter trois instructions.

Ce processus est inefficace et inhrent aux processeurs subscalaires. Puisqu'une seule instruction est excute la fois, tout le processeur attend la fin du traitement de cette instruction avant de s'intresser la suivante avec pour

Processeur consquence que le processeur reste fig sur les instructions qui ncessitent plus d'un cycle d'horloge pour s'excuter. L'ajout d'une seconde unit de traitement (voir ci-dessous), ne permet pas d'amliorer notablement les performances, ce n'est plus une unit de traitement qui se trouve fige mais 2, en augmentant encore le nombre de transistors inutiliss. Ce type de conception, dans laquelle les ressources d'excution du CPU ne traitent qu'une seule instruction la fois ne peut atteindre que des performances scalaires (une instruction par cycle d'horloge), voire subscalaires (moins d'une instruction par cycle d'horloge). En tentant d'obtenir des performances scalaires et au-del, on a abouti diverses mthodes qui conduisent le CPU a un comportement moins linaire et plus parallle. Lorsqu'on parle de paralllisme de processeur, deux termes sont utiliss pour classifier ces techniques de conception : Instruction Level Parallelism (ILP) - Paralllisme au niveau instruction ; Thread Level Parallelism (TLP) - Paralllisme au niveau thread (groupe d'instructions). L'ILP cherche augmenter la vitesse laquelle les instructions sont excutes par un CPU (cest--dire augmenter l'utilisation des ressources d'excution prsentes dans le circuit intgr). L'objectif du TLP est d'accrotre le nombre de threads que le CPU pourra excuter simultanment. Chaque mthode diffre de l'autre d'une part, par la faon avec laquelle elle est implmente et d'autre part, du fait de leur efficacit relative augmenter les performances des processeurs pour une application. ILP : Pipelining d'instructions et architecture superscalaire Une des mthodes les plus simples pour accrotre le paralllisme consiste dmarrer les premires tapes de recherche ( fetch ) et dcodage ( decode ) d'une instruction avant la fin d'excution de l'instruction prcdente. C'est la forme la plus simple de Pipeline de base 5 tages. Dans le meilleur scnario, ce pipeline peut soutenir un la technique de pipelining, elle est utilise taux d'excution d'une instruction par cycle. dans la plupart des processeurs modernes non spcialiss. Le pipelining permet d'excuter plus d'une instruction la fois en dcomposant le chemin d'excution en diffrentes tapes. Ce dcoupage peut tre compar une chane d'assemblage. Le pipelining peut crer des conflits de dpendance de donnes, lorsque le rsultat de l'opration prcdente est ncessaire l'excution de l'opration suivante. Pour rsoudre ce problme, un soin particulier doit tre apport pour vrifier ce type de situation et retarder, le cas chant, une partie du pipeline d'instruction. Naturellement, les complments de circuits apporter pour cela ajoutent la complexit des processeurs parallles. Un processeur parallle peut devenir presque scalaire, ralenti uniquement par les attentes du pipeline (une instruction prend moins d'un cycle d'horloge par tape).

19

Processeur

20

Les dveloppements suivants du pipelining ont conduit au dveloppement d'une mthode qui diminue encore plus les temps d'attente des composants du processeur. Les conceptions dites superscalaires comportent un pipeline instruction longue et plusieurs units d'excution identiques [4] . Dans un pipeline superscalaire, plusieurs instructions sont lues et transmises un rpartisseur qui dcide si les instructions seront excutes en parallle (simultanment) ou non. Le cas chant, les instructions sont rparties sur les units d'excution disponibles. En gnral, plus un processeur superscalaire est capable d'excuter d'instructions en parallle et plus le nombre d'instructions excutes dans un cycle sera lev.

Pipeline superscalaire simple. En recherchant et affectant deux instructions la fois, le CPU peut excuter un maximum de deux instructions par cycle.

La plupart des difficults rencontres dans la conception des architectures de processeurs superscalaires rsident dans la mise au point du rpartisseur. Le rpartisseur doit tre disponible rapidement et tre capable de dterminer sans erreur si les instructions peuvent tre excutes en parallle, il doit alors les distribuer de faon charger les units d'excution autant qu'il est possible. Pour cela, le pipeline d'instructions doit tre rempli aussi souvent que possible, crant le besoin d'une quantit importante de mmoire cache. Les techniques de traitement alatoire comme la prdiction de branchement, l'excution spculative et la rsolution des dpendances aux donnes deviennent cruciales pour maintenir un haut niveau de performance. En tentant de prdire quel branchement (ou chemin) une instruction conditionnelle prendra, le processeur peut minimiser le nombre de fois que tout le pipeline doit attendre jusqu' la fin d'excution de l'instruction conditionnelle. L'excution spculative amliore les performances modestes en excutant des portions de code qui seront, ou ne seront pas, ncessaires la suite d'une instruction conditionnelle. La rsolution de la dpendance aux donnes est obtenue en rorganisant l'ordre dans lequel les instructions sont excutes en optimisant la disponibilit des donnes. Lorsque seule une partie de processeur est superscalaire, la partie qui ne l'est pas rencontre des problmes de performance dus aux temps d'attente d'ordonnancement. Le Pentium original (P5) disposait de deux ALU superscalaires qui pouvaient chacune accepter une instruction par cycle. Ensuite le P5 est devenu superscalaire pour les calculs sur les nombres entiers mais pas sur les nombres virgule flottante. Les successeurs des architectures Pentium d'Intel, les P6, ont t dots de capacits superscalaires pour les calculs sur les nombres virgule flottante amliorant par l leurs performances en calcul flottant. Les conceptions de pipelining simple et superscalaires augmentent le paralllisme (ILP) des CPU en permettant un processeur unique d'excuter des instructions un rythme de plus d'une instruction par cycle. La plupart des processeurs d'aujourd'hui ont au moins une partie superscalaires. Au cours des dernires annes, certaines volutions dans la conception des processeurs fort paralllisme ne se trouvent plus dans les circuits du processeur mais ont t places dans le logiciel ou dans son interface avec le logiciel (ISA). La stratgie des instructions trs longues (Very Long Instruction Word - VLIW) conduit implmenter certains paralllismes directement dans le logiciel, cela rduit la participation du processeur au gain de performance mais en rduit la complexit. TLP : excution simultane de programmes Une autre stratgie communment employe pour augmenter le paralllisme des processeurs consiste introduire la capacit d'excuter plusieurs programmes (threads) simultanment. De manire gnrale, les processeurs multi-threads ont t utiliss depuis plus longtemps que les processeurs architecture pipeline. Bon nombre des conceptions pionnires, ralises par la socit Cray Research, datant de la fin des annes 1970 et des annes 1980, mettaient en uvre principalement la mthode TLP, dgageant alors de trs grandes capacits de calcul (pour l'poque). En fait, le multithreading tait connu ds les annes 1950 (rf. : Smotherman 2005). Dans le cas des processeurs simples, les deux mthodologies principales employes pour dvelopper des TLP sont le multiprocessing au niveau des circuits (Chip-level multiprocessing - CMP) et le multithreading simultan

Processeur (Simultaneous multithreading - SMT). un plus haut niveau, il est d'usage de raliser des ordinateurs avec plusieurs processeurs totalement indpendants dans des organisations de type symtrique (Symmetric multiprocessing - SMP) ou accs mmoire non uniforme (Non Uniform Memory Access - NUMA). Il s'agit alors de multiprocesseurs ou de processeurs multi-cur. Alors que ces techniques diffrent par les moyens qu'elles mettent en uvre, elles visent toutes le mme but : augmenter le nombre de threads qu'un processeur peut excuter en parallle. Les mthodes de paralllisme CMP et SMP sont assez semblables, elles demandent plus d'effort de conception que l'utilisation de deux ou trois processeurs totalement indpendants. Dans le cas du CMP, plusieurs curs (core, en anglais) de processeurs sont intgrs dans le mme botier, parfois mme dans le mme circuit intgr. Les SMP, eux, utilisent plusieurs botiers indpendants. NUMA est comparable au CMP mais met en uvre un modle d'accs mmoire non uniforme (les temps d'accs sont diffrents suivant que la mmoire est locale ou non locale un processeur donn). Cette caractristique est fondamentale dans les ordinateurs plusieurs processeurs car pour les modles SMP mmoire partage, les temps d'accs la mmoire sont rapidement dgrads en cas d'accs simultan par plusieurs processeurs. ce titre, NUMA est considr comme un modle plus volutif en nombre de processeurs. SMT diffre des autres amliorations de TLP puisqu'il vise dupliquer aussi peu de portions de CPU que possible. La mise en uvre d'une stratgie de type TLP ressemble une architecture superscalaire et se trouve souvent utilise dans les microprocesseurs superscalaires (comme les POWER5 d'IBM). Plutt que de dupliquer un CPU complet, la conception SMT ne duplique que les parties ncessaires pour la recherche ( fetch ), le dcodage, ( decode ) et la rpartition des instructions ( dispatch ) ainsi que les registres non spcialiss. Ceci permet a un processeur SMT de maintenir ses units d'excution occupes plus souvent, en leur fournissant des instructions en provenance de deux programmes diffrents. Comme on vient de la voir, le SMT est proche de l'architecture ILP superscalaire mais, plutt que d'excuter simultanment plusieurs instructions en provenance de deux programmes diffrents, elle permet d'excuter simultanment plusieurs instructions en provenance du mme programme.

21

Notes et rfrencesNotes[1] Parce que l'architecture du jeu d'instruction d'un CPU est fondamentale pour son interface et utilisation, cela est souvent utilis comme une classification pour le type de CPU. Par exemple, un CPU PowerPC utilise une variation du PowerPC ISA. Un systme peut excuter un ISA diffrent en excutant un mulateur. [2] Parmi les premiers ordinateurs tel que le Harvard Mark I aucun type de sauts n'tait support, limitant par consquent la complexit des programmes pouvant tre excuts. C'est essentiellement pour cette raison que ces ordinateurs sont souvent considrs comme ne contenant pas un CPU propre, malgr leurs similitudes aux ordinateurs programme enregistr. [3] Dans les faits, tous les CPU synchrone utilisent un mlange de logique squentielle et de logique combinatoire (voir logique boolenne). [4]

(en) Jack Huynh, The AMD Athlon XP Processor with 512KB L2 Cache (http://courses.ece.uiuc.edu/ece512/Papers/Athlon.pdf), University of Illinois - Urbana-Champaign, 2003, p.6-11. Consult le sept. 2011 [PDF]

Processeur

22

Rfrences

AnnexesArticles connexes Microprocesseur Microcontrleur Pipeline (informatique) Processeur vectoriel Processeur superscalaire Processeur synchrone Processeur asynchrone Processeur autosynchrone Processeur 64 bit lithographie en immersion TPU

Liens externes Fonctionnement Standard d'un Processeur (http://www.arcanapercipio.com/cpu/uc/archimat/foncstd.php)

Front side busLe front side bus ou FSB (appel aussi bus systme, bus interne, en anglais internal bus) est traditionnellement le bus informatique reliant le processeur au Northbridge (lequel gre les changes notamment avec la mmoire vive). Son dbit dpend de la vitesse dhorloge, exprime en MHz. La frquence du processeur dcoule du FSB, car elle est gale celle du FSB multiplie par un coefficient propre au processeur (les processeurs modernes ont une vitesse de fonctionnement interne dcuple). Les processeurs AMD partir de l'Athlon 64 (architecture K8) et certains processeurs Intel de gnration Nehalem (les Core i7-9xx) ont abandonn le FSB au profit respectivement de l'HyperTransport et du QuickPath Interconnect (QPI).

Calcul du dbit d'un FSBLe FSB est caractris par le volume dinformations transmises simultanment. Ce volume, exprim en bits, correspond au nombre de lignes physiques sur lesquelles les donnes sont envoyes de manire simultane. Une nappe de 32 fils permet ainsi de transmettre 32bits en parallle. On parle ainsi de largeur pour dsigner le nombre de bits quun bus peut transmettre simultanment. Dautre part, la vitesse du bus est galement dfinie par sa frquence (exprime en hertz), cest--dire le nombre de paquets de donnes envoys ou reus par seconde. On parle de cycle pour dsigner chaque envoi ou rception de donnes. De cette faon, il est possible de connatre le dbit maximal du bus (ou taux de transfert maximal), cest--dire la quantit de donnes quil peut transporter par unit de temps, en multipliant sa largeur par sa frquence. Un bus dune largeur de 16bits, cadenc une frquence de 133MHz possde donc un dbit gal : 16 133106bit/s = 2128106bit/s = 266106o/s = 266Mo/s

Front side bus NB : Quand on parle de frquence du FSB, on peut parler de frquence d'horloge (frquence de base en gros) ou de frquence de fonctionnement qui n'est pas la mme que la frquence d'horloge, car les processeurs Intel utilisent un bus quad pumped, ce qui donne une frquence de fonctionnement quatre fois suprieure la frquence d'horloge du FSB. Pour une frquence d'horloge de 200 MHz, le FSB d'un Intel aura donc une frquence de fonctionnement de 4 * 200 = 800 MHz. La frquence d'horloge de la RAM dpend de celle du processeur et non de celle du FSB.

23

Accs direct la mmoireL'accs direct la mmoire ou DMA (sigle anglais de Direct Memory Access) est un procd informatique o des donnes circulant de ou vers un priphrique (port de communication, disque dur) sont transfres directement par un contrleur adapt vers la mmoire principale de la machine, sans intervention du microprocesseur si ce n'est pour lancer et conclure le transfert. La conclusion du transfert ou la disponibilit du priphrique peuvent tre signals par interruption. On l'oppose ainsi des techniques de polling o le microprocesseur doit attendre chaque donne. Le DMA est ncessaire pour conserver la fluidit d'utilisation d'un systme multitche lors de l'accs des priphriques, les disques durs par exemple. En effet, en l'absence de DMA, le systme est presque bloqu pendant les transferts de donnes. Par ailleurs, pour des priphriques rapides, il est impossible de transfrer chaque donne par une interruption. Une alternative est que le priphrique ait une mmoire tampon partage avec le systme, dont le remplissage est signal par une interruption. Cet arrangement, utilis sur certains contrleurs de rseau, induit cependant un surcot en raison de la copie supplmentaire faire. On parle de DMA matre du bus (DMA busmaster) quand le priphrique qui fait du DMA peut adresser lui-mme les donnes sur le bus systme, et de scatter-gather quand un mme transfert peut porter sur une succession de plusieurs zones mmoires. Cette dernire fonctionnalit est pratique pour les systmes mmoire virtuelle, car un tampon situ des adresses contigus en mmoire virtuelle est en gnral form de plusieurs blocs de mmoire vive. Pendant le fonctionnement du DMA, celui-ci entre parfois en conflit avec le processeur, les mmoires ne pouvant effectuer par dfinition qu'un accs par cycle (puisque c'est la dfinition mme du cycle). Le DMA ne pouvant pas forcment attendre aussi longtemps que le processeur (qui ne risque pas, lui, de perdre de l'information au vol), il a la priorit d'accs, technique qui se nomme le vol de cycle.

Carte d'extension

24

Carte d'extensionDans un ordinateur, une carte dextension est un ensemble de composants placs sur un circuit imprim qui est connectable la carte mre via un bus informatique. Le but dune carte dextension est dajouter des capacits ou des fonctionnalits un ordinateur.

Les cartes d'extension les plus frquentesParmi les cartes dextension les plus courantes, on peut citer : carte graphique ; carte son ; carte rseau ; carte mmoire ; carte acclratrice.

Les diffrents bus informatiquesLe bus informatique reliant la carte dextension la carte mre est gnralement standardis, de mme que le connecteur dextension (appel slot en anglais, cest un support physique reliant la carte dextension la carte mre). Quelques-uns des principaux standards de bus informatique qui se sont succd (en proposant des dbits de plus en plus importants) sont : Industry Standard Architecture (ISA), bus parallle de 8bits apparu en 1984 ; Micro Channel Architecture (MCA) ; Extended Industry Standard Architecture (EISA), apparu en 1988, extension 16bits du bus ISA ; Vesa Local Bus (VLB), apparu en 1992 ; Peripheral Component Interconnect (PCI), bus parallle de 32bits, apparu en 1994 ; PCI-X, extension 64bits de ce dernier (employ principalement sur les serveurs jusqu larrive du PCIe) ; Accelerated Graphics Port (AGP), apparu en 1997 ; Peripheral Component Interconnect - Express (PCI Express abrg PCIe), bus srie, apparu en 2004.

Small Computer System Interface

25

Small Computer System InterfaceSCSI, Small Computer System Interface en anglais, est un standard dfinissant un bus informatique permettant de relier un ordinateur des priphriques ou bien mme un autre ordinateur. Le standard dcrit les spcifications mcaniques, lectriques et fonctionnelles du bus.Symbole du SCSI

Historique en 1979, le bus SCSI a t initialement cr par la socit Shugart, du nom de son fondateur Al Shugart, un pionnier de l'informatique, ancien ingnieur chez IBM (alors spcialiste des disques durs), sous le nom de SASI(en) (Shugart Associates Systems Interface) .

Connecteurs SCSI 25-50 broches ( gauche, le connecteur 50 broches)

en 1981, Shugart se lie avec NCR Corporation dans l'espoir d'en faire un standard ANSI. Un comit technique est cr, il amliorera sensiblement le bus SASI, le renomme SCSI et la norme X3.131 le dcrivant verra le jour en 1986. La premire norme dfinissait trop de paramtres optionnels pour la norme (notamment dans le jeu de commandes, mais aussi dans les possibilits matrielles comme pour les bits de parit, etc.), et les incompatibilits entre fabricants sont nombreuses. Des amliorations furent apportes en 1994 avec la norme SCSI-2 et rcemment avec la norme SCSI-3, rduisant ces problmes d'interoprabilit.

SpcificitsCe qui diffrencie ce bus des autres est qu'il dporte la complexit vers le priphrique lui-mme. De ce fait les commandes envoyes au priphrique peuvent tre complexes, le priphrique devant alors (ventuellement) les dcomposer en sous-tches plus simples, ce qui est extrmement avantageux si l'on travaille avec des systmes d'exploitation multitche. Cette interface est donc plus rapide, plus universelle et plus complexe que l'interface E-IDE dont le principal inconvnient est d'accaparer un pourcentage non ngligeable du processeur, ce qui constitue un handicap quand de nombreux flux de donnes sont simultanment ouverts. Plus intelligente et moins dpendante de l'unit centrale, l'interface SCSI peut grer des priphriques internes et externes trs varis, tels que disques durs, scanners, graveurs, units de sauvegardes, etc.

Small Computer System Interface

26

Priphriques concernsLa norme SCSI-2 prcise que le bus peut relier entre eux : des ordinateurs avec des priphriques tels que : disques durs lecteurs de disquettes lecteurs de bandes magntiques imprimantes lecteurs de disque optique (WORM) lecteurs de disque optique (CD-ROM) scanners changeur de mdia priphriques de communication

La norme ne restreint pas l'utilisation du bus l'interconnexion d'un ordinateur avec des priphriques, mais qu'il peut tre utilis entre des ordinateurs, ou pour partager des priphriques entre ordinateurs. La norme SCSI-3 est plus gnraliste. On se rfrera la page du comit technique [1] pour en avoir le dtail.

Modes de transfertInterface Vitesse Bus (Mo/s) 5 Frquence de bus (MHz) 5 Taille Bus (bits) 8 Longueur max. de cble SE (m) 6 Longueur max. de cble LVD (m) Longueur max. de cble HVD (m) 25

SCSI SCSI-1

Wide SCSI SCSI-2 Fast SCSI Fast Wide SCSI Ultra SCSI SCSI-3 Ultra Wide SCSI Ultra2 SCSI Ultra2 Wide SCSI Ultra3 SCSI Ultra-160 SCSI (ou Ultra3 Wide SCSI) Ultra-320 SCSI

10 10 20 20 40 40 80 80 160

5 10 10 20 20 40 40 80 80

16 8 16 8 16 8 16 8 16

3 3 3 1,5 3 -

12 12 12 12

25 25 25 25 25 25 -

320

160 (80MHz DDR) 320 (80MHz QDR)

16

-

12

-

Ultra-640 SCSI

640

16

-

12

-

Small Computer System Interface

27

Autres technologies utilises avec les commandes SCSI-3 Interface parallle Ultra SCSI Protocole SCSI Interlock Protocol (SIP) 5 640Mo/s 7 15 FC-AL Fibre Channel Protocol (FCP) 100 400Mo/s 126 Interfaces srie SSA Serial Storage Protocol (SSP) 20 80Mo/s 128 IEEE P 1394 Serial Bus Protocol (SBP) 12,5 3200Mb/s 63

Vitesse max. Nombre de priphriques

Distance

12 25m

20 200m (cuivre) 10km (fibre optique)

20m (cuivre) 680m (fibre optique)

72m

Amliorations du SCSI-3 par rapport au SCSI-2Le SCSI-3 prsente comme norme changement l'apparition d'un bus srie, dans une technologie jusqu' prsent exclusivement parallle. Il apporte aussi quelques nouveauts et amliorations dans l'interface parallle.

Interfaces paralllesUltra 3 La frquence du bus est double. On passe donc de 40 80MHz. Les priphriques SE ne sont plus du tout compatibles avec ces frquences cause des phnomnes de rverbration. Ultra 160 L'interface Ultra 160 utilise le LVD, elle n'est absolument plus compatible avec SCSI-1 et 2. L'Ultra 160 apporte de lourdes modifications dans la gestion du transfert de donnes. Mise en uvre du CRC. Le bus tant en LVD, on a de plus grandes vitesse et donc de bien plus grands risques d'erreurs dans les transmissions. C'est pourquoi on a ajout la gnration d'un CRC afin de pouvoir vrifier l'intgrit des donnes. Domain Validation. La carte hte ngocie avec le priphrique la meilleure vitesse utiliser (un peu l'image de ce que font les modems), ce qui vite qu'on ne communique plus vite avec le priphrique qu'il n'en est capable (ce qui auparavant le rendait inaccessible). Double Transition Clocking. On transfre les donnes sur deux flancs (montant et descendant), ce qui permet de doubler les dbits. C'est pourquoi on parle d'ultra160 (80MHz 2).

Interfaces srieAmliorations par rapport l'interface parallle Avec l'augmentation des frquences de transfert, les dcalages entre les signaux et leur sensibilit au bruit et aux capacits parasites deviennent problmatiques et causent des restrictions dans la longueur des cbles. On passe donc sur des bus srie (un seul fil) qui vite les problmes de courants induits. La rflexion sur des interfaces sries fut commence avant la mise au point de l'Ultra 160 et 320. Mais les dbits offerts sont tels que ces technologies restent tout fait viables. L'objectif de l'interface srie rside dans le fait d'empaqueter les commandes et donnes SCSI, afin de les transfrer via un seul fil, tout en conservant la compatibilit SCSI (afin de conserver l'avantage, notamment, de la possibilit de stockage des commandes, trs utile en fonctions multi-tches).

Small Computer System Interface

28

On retrouve de nombreux avantages dans ces technologies, on peut citer notamment : des architectures point point ; double accs : on peut ds lors, accder un point de deux manires diffrentes, ceci introduit une meilleure rsistance quant aux pannes de bus ; possibilits plus grandes au niveau des systmes RAID, on peut ainsi grimper plus de 100 disques durs grce SSA ou Fibre Channel, contre 5 avec une classique interface SCSI ; Technologies utilises On peut citer comme technologies sries utilisant les commandes SCSI : FC-AL SSA FireWire iSCSI

Un disque Fibre channel (2008)

Amliorations du SCSI-2 par rapport au SCSI-1La norme SCSI-2 de 1994 est une amlioration du SCSI-1. Certains points ont t amliors ou rendus obligatoires. Thoriquement SCSI-1 et SCSI-2 ont une compatibilit descendante. On peut noter que l'utilisation des bits de parit a t rendue obligatoire avec le SCSI-2.

Fast SCSIOn utilise des transferts synchrones de haut dbit, ce qui permet des taux de transfert de 10Mo/s sur un cblage 8bits, et de 20 ou 40Mo si on est sur du 16 ou 32bits (avec une frquence de 10MHz).

Wide SCSIOn a la possibilit de travailler avec des bus plus larges de 16 ou 32bits, ce qui permet des dbits plus importants. On utilisait un cble A (50 broches) pour les transmissions sur 8bits, le SCSI-2 avait prvu un cble B (68 broches) pour les bus plus larges. Mais il n'a pas rencontr de rel succs, on lui prfre le cble P (68 broches galement) dfini dans le SCSI-3. Pour le 32bits, le cble P doit tre utilis avec un cble Q (68 broches lui aussi).

File d'attente des commandes scsiLe SCSI-1 ne permettait d'envoyer les commandes qu'une une. Le SCSI-2 permet d'envoyer jusqu' 256 commandes un priphrique. Elles seront stockes et traites dans l'ordre optimal par le priphrique. Ceci permet d'augmenter les performances de travail du priphrique et prend un intrt fort quand on travaille avec des systmes d'exploitation multi-tche (Linux, MS-Windows NT etc.) qui peuvent tre amens faire plusieurs requtes simultanment un priphrique (plusieurs accs en lecture sur un disque dur par exemple).

Small Computer System Interface

29

Types de cblageTransport des donnes Singled Ended (SE) : On travaille en mode asymtrique. Pour chaque signal envoyer par le bus correspond un fil unique. High Voltage Differential (HVD) : On travaille en mode diffrentiel. Pour chaque signal, on utilise deux fils : le premier porte le signal, le second porte son oppos. Le rcepteur traite la diffrence entre les deux. Low Voltage Differential (LVD) : Idem HVD, mais avec des tensions plus petites, permettant des cbles plus longs (meilleure tolrance aux capacits parasites et au bruit).

Connecteur et cble VHDCI

Rsistances de terminaison Rsistance passive : En fin de cble, on tablit deux rsistances de 220 et 330, soit 132. La 220 est relie la masse, la 330 l'alimentation qui est fournie par un des composants du bus (qui ne doit donc jamais tre teint si on veut que le bus fonctionne). Mais frquences trop leves, ce type de rsistance de terminaison provoque des rverbrations du signal. La terminaison passive est limite de petits tronons de cbles, et insuffisante pour le Fast et le Wide SCSI-2. Il faut donc l'viter, ce qui n'est pas difficile car il n'y a pratiquement plus de constructeur qui l'utilise. Rsistance active (ou Alternative2) : Rsistance de 110 obtenue Bouchon d'extrmit 50 broches par des rgulateurs de tension. Elle vite les phnomnes de rverbration. La terminaison active est fortement conseille par la norme SCSI-2. Elle offre des rgulateurs de tension pour que le signal SCSI se termine toujours un niveau de tension correct. Rsistance parfaite force : Variante de l'Alternative2 qui permet des cbles plus longs. La terminaison Forced Perfect Termination est une variation amliore de la terminaison active. Il en existe plusieurs versions : FPT-3, 18, 27

Rfrences[1] http:/ / www. t10. org

Peripheral Component Interconnect

30

Peripheral Component InterconnectLe Peripheral Component Interconnect (PCI) est un standard de bus local (interne) permettant de connecter des cartes d'extension sur la carte mre d'un ordinateur. L'un des intrts du bus PCI est que deux cartes PCI peuvent dialoguer entre elles sans passer par le processeur.

HistoriqueLa spcification de ce bus est initialement due Intel qui a commenc y travailler vers 1990. La version 1.0 est publie le 22juin1992 et la 2.0 le 30avril1993. La premire implmentation date de 1994 sur des cartes mres pour processeur Intel 80486. partir de l, le bus PCI remplace rapidement les autres bus prsents, comme le bus ISA. Depuis, l'volution des spcifications du bus PCI, ainsi que celles du bus AGP et du PCI Express sont gres par un groupe d'intrt, le PCI Special Interest Group (PCI-SIG), ouvert aux industriels. Le bus PCI (ainsi que l'AGP) est remplac (pour toutes les cartes, commencer par les cartes graphiques) par une version plus petite et plus rapide : le PCI Express.

5 ports PCI sur une carte mre.

SpcificationLa spcification du bus PCI dcrit la taille du bus (dont l'espacement des conducteurs), les caractristiques lectriques, les chronogrammes du bus et les protocoles. Il existe plusieurs variantes de ce bus : PCI 2.2 qui existe en deux versions : bus 32 bits 33 MHz (soit une bande passante maxi de 133 Mo/s) (la plus rpandue) ; bus 64 bits 66 MHz (soit une bande passante maxi de 528 Mo/s), utilis sur certaines cartes mres 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 1066 Mo/s), utilise principalement dans les machines professionnelles ; PCI-X 2.0 : 266 MHz (soit une bande passante maxi de 2133 Mo/s) ; PCI Express : norme drive du PCI, destine 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 vido ; Mini PCI : driv du PCI 2.2 destin tre intgr dans les ordinateurs portables.Slots PCI Express: du haut en bas x4, x16, x1 et x16 compars un slot PCI 32 bits (en bas)

Dans sa version purement PCI la bande passante est partage entre tous les lments connects sur le bus, contrairement ce qui se passe pour la version PCI Express o elle est ddie pour chaque priphrique. Cette dernire est donc prfrable si on veut utiliser simultanment des cartes haut dbit (carte rseau gigabits, contrleur de disque, carte graphique, ...). Comme pour les processeurs, certaines cartes mres permettent de surfrquencer un bus PCI 33 MHz, en augmentant la frquence 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 frquences.

Peripheral Component Interconnect

31

UtilisationsLe PCI est gnralement utilis dans les ordinateurs personnels. Voici une liste non exhaustive de cartes d'extension gnralement connectes ce port : carte son carte graphique - seules les anciennes cartes ou les cartes d'entre de gamme utilisent ce bus de nos jours, le PCI-Express offrant de bien meilleures performances pour les cartes modernes carte rseauUne carte PCI offrant un port parallle

Certains composants internes la carte mre (le son, le rseau, etc.) sont gnralement prsents et utilisables sur le bus PCI. C'est le cas par exemple de contrleurs intgrs au Northbridge, au Southbridge (cas actuels les plus frquents : son, rseau...) ou des puces ddies, souds directement sur une carte mre haut-de-gamme (autrefois pour le son intgr, aujourd'hui pour des contrleurs RAID supplmentaires, etc.).

PCI ExpressLe 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 PCIPort PCI Express (de haut en bas : 4, 16, 1 et 16), compar au Un avantage du PCI Express est dtre driv de la traditionnel Port PCI 32-bit (en bas) 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. Il serait mme envisag dans lavenir dy connecter des priphriques externes.

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 integr 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 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[1] . 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/sec 500Mo/sec par sens par lien. (le dbit de la premire gnration gen 1.0 est doubl). En 2010, PCI-SIG publie le cahier des charges du PCIe : gen 3.0. Le dbit sera doubl 1000Mo/sec 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 devraient arriver mi-2011.

32

Les bases de PCIeDeux 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/sec PCIe 1x aura donc un dbit utile de (2,5 * 2 * 8/10)/8 = 500Mo/sec 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) 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.

PCI Express 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