PCI Express
PCI Express (Peripheral Component Interconnect Express, lyhennettynä PCIe) on suurinopeuksinen tietokoneen standardoitu väylätyyppi, joka on suunniteltu korvaamaan vanhemmat PCI, PCI-X ja AGP-liitäntästandardit. PCIe-liitäntä sisältää useita parannuksia edeltäjiinsä nähden, joita ovat muun muassa suurempi siirtokyky, siirtyminen sarjamuotoiseen tiedonsiirtoon rinnakkaisesta, väylän parempi skaalattavuus, sekä pienempi siirräntäpinnien määrä, jonka ansiosta PCIe-liittimillä on pienempi fyysinen tilantarve. PCIe:ssä on myös yksityiskohtaisempi virheiden havaitsemis- ja raportointimekanismi (Advanced Error Reporting (AER)) ja lisäksi sen viimeisimmät versiot tukevat I/O-virtualisointia. PCIe on vähitellen korvannut edeltäjänsä (AGP, PCI ja PCI-X), ja on tämän seurauksena noussut hallitsevaksi väylätyypiksi pöytätietokoneissa. PCIe:n sähköteknisiä puolia on hyödynnetty useissa siihen pohjautuvissa muunnelmissa, joista ehkä huomattavimpana voidaan mainita ExpressCard, PCIe:n kannettaville tietokoneille suunniteltu versio.
PCIe-liitäntästandardia ylläpitää PCI-SIG (PCI Special Interest Group), johon kuuluu yli 900 tietotekniikka-alan yritystä. Maaliskuussa 2015 viimeisin tuotannossa ja kuluttajamarkkinoilla saatavilla oleva PCIe-versio oli 3.1.
PCIe poikkeaa arkkitehtuuriltaan huomattavasti aikaisemmista väylistä, ja tästä syystä se poikkeaa täysin myös PCI-väylästä. Yleensä väylä koostuu yhteisestä tiedonsiirtokanavasta, johon kaikki väylään kytketyt laitteet liittyvät, ja jota laitteet käyttävät vuorotellen. PCIe taas muistuttaa pakettikytkentäistä tiedonsiirtoverkkoa (erityisesti Ethernetin nykyaikaista tähtimäistä versiota) OSI-mallin mukaisella protokollapinolla, joten periaatteessa PCIe ei ole väylä sanan perinteisessä merkityksessä. PCIe:ssä jokaisella laitteella on oma tiedonsiirtokanava kytkimeen. Tiedonsiirtokanava koostuu linjoista (). Yksi linja koostuu kahdesta yksisuuntaisesta johdinparista, joista toinen siirtää tietoa kytkimen suuntaan ja toinen taas kytkimeltä laitteelle. Tämän ansiosta voidaan samanaikaisesti siirtää tietoa molempiin suuntiin. Standardi tukee 1, 2, 4, 8, 12, 16 ja 32 linjan ratkaisuja, joista nykyään yleisimmin käytössä ovat yhden (×1), neljän (×4), kahdeksan (×8) ja 16 (×16) linjan kytkennät. Kytkin reitittää tietoa PCIe -laitteiden ja muun järjestelmän välillä tiedonsiirtopakettien otsikkokenttien sisältämän tiedon perusteella. Toisin kuin monet aiemmat väylätekniikat, PCIe käyttää CRC-virheenkorjausta luotettavuuden parantamiseksi.
Täysikokoisia PCIe kortteja käytetään etenkin pöytätietokoneissa. Kortit sopivat kantansa kokoiseen tai suurempaan PCIe-paikkaan, mutta eivät useimmissa tapauksissa pienempään ilman modifiointia. On tosin myös saatavilla emolevyjä, joissa PCIe-porttien toinen pää on avoin mahdollistaen pidempien korttien asentamisen pienempään liittimeen. Joissain emolevyissä on jätetty myös osa liitännöistä asentamatta, vaikka liittimen fyysinen koko olisi mahdollistanut niiden käytön. PCI Express -liittimien pituuserot johtuvat niiden vaihtelevasta pinnimäärästä. Lyhemmissä liittimissä on vähemmän pinnejä, ja ne pystyvät tämän takia pienempiin siirtonopeuksiin, mutta vaativat kuitenkin samalla vähemmän tilaa emolevyllä. Pidempien liitinten etuna on niiden tarjoama suurempi siirtonopeus, mutta ne vaativat vastaavasti enemmän tilaa emolevyllä.
Tästä esimerkkinä ×16-paikka, joka toimii ×4 nopeuksilla. Korttipaikkaan mahtuu mikä tahansa ×1, ×2, ×4, ×8 tai ×16 -kortti, mutta se antaa kortille vain ×4-nopeuden. Tällainen konfiguraatio voidaan ilmoittaa esimerkiksi seuraavilla tavoilla: ×16 (×4 mode); tai "×koko @ ×nopeudella" (×16 @ ×4). Tällaisten liittimien etuna on niiden tuoma mahdollisuus asentaa suurempia kortteja ilman, että emolevyn tarvitsee tukea kortin vaatimaa täyttä nopeutta.
Seuraavassa taulukossa esitetään PCI Express kortin A- ja B-puolien nastojen käyttötarkoitukset.
"PCI Express Mini Card" (myös Mini PCI Express, Mini PCIe, Mini PCI-E, mPCIe tai PEM) on PCI Express -väylään pohjautuva korvaaja vanhemmalle Mini PCI -liitännälle. Sen on kehittänyt PCI-SIG, ja liitäntä tukee sekä PCIe- että USB 2.0 -toiminnallisuuksia. Monet vuoden 2005 jälkeen valmistetut kannettavat tietokoneet tukevat jotain PCIe-pohjaista liitäntästandardia.
PCI Express Mini -kortin ulkomitat ovat 30×50,95 mm. Kytkentä kortin ja emolevyn välillä tapahtuu 52-pinnisellä liittimellä, jonka pinnit on jaettu kahdelle puolelle. Yhden pinnin leveys on 0,6 mm. Kummallakin puolella on 26 pinniä, jotka on jaettu yhteen kahdeksan ja yhteen 18 pinnin osaan. (katso kuva) Mini-kortista on olemassa myös puolet pienempi versio, jonka ulkomitat ovat 30×26,8 mm. mPCIe piirilevyn paksuus on 1,0 mm ilman komponentteja.
Monet muut laajennuskortit on kehitetty PCIe:n pohjalta. Näihin kuuluvat muun muassa:
PCIe-liitännän suunnitteluvaiheessa sitä kutsuttiin lyhenteellä "HSI" (for "High Speed Interconnect"), joka vaihtui vielä nimelle "3GIO" (for "3rd Generation I/O") ennen lopullista asettumistaan "PCI Express" nimelle, jolla liitäntä nykyisin tunnetaan. Työ PCIe-standardin kanssa käynnisyi "Arapaho Work Group" (AWG) -ryhmässä, joka koostui alkuun vain Intelin insinööreistä. Myöhemmin siihen liittyi kuitenkin henkilöitä Intelin kanssa yhteistyötä tehneistä yrityksistä.
PCIe -tekniikkaa päivitetään edelleen ja 2013 se oli saavuttanut neljännen versionsa.
PCI-SIG esitteli 2003 PCIe 1.0a -liitännän, joka pystyi siirtämään 250 MB/s dataa linjaa kohden ja saavuttamaan 2,5 GT/s siirtonopeuden.
PCIe 1.x käyttää 8b/10b-koodausta. Linkki toimii 2,5 GHz kellotaajuudella, kuljettaen 250 000 000 tehollista tavua sekunnissa (250 MB/s) suurimmalla nopeudellaan.
PCI-SIG julkaisi helmikuussa 2005 PCIe 1.1 -liitännän. Päivitys sisälsi useita täsmennyksiä ja parannuksia, mutta se oli täysin yhteensopiva edellisen PCIe 1.0a -standardin kanssa. Päivitys ei sisältänyt muutoksia tiedonsiirtonopeuksiin.
PCI-SIG julkaisi PCI Express Base 2.0 -määritelmän 15. tammikuuta 2007. PCIe 2.0 -standardissa on kaksinkertaiset tiedonsiirtonopeudet 1.0 -standardiin nähden (2,5 GT/s vs 5 GT/s; 250 MB/s vs 500 MB/s). 32-kaistainen PCIe-liitäntä (×32) pystyy siirtämään yhteenlaskettuna 16 GB/s.
PCIe 2.0 -emolevyliitännät ovat täysin yhteensopivia PCIe v1.x -korttien kanssa. PCIe 2.0 toimivat myös PCIe 1.x liitännässä, mutta niiden PCI Express 1.1 -standardin mukainen pienempi kaistanleveys rajoittaa niiden toimintaa. Yleisesti ottaen PCIe 2.0 -liitännälle suunnitellut näytönohjaimet toimivat v1.1 tai v1.0a emolevyjen kanssa ja päinvastoin.
The PCI-SIG kertoi myös, että PCIe 2.0 sisältää parannuksia Point-to-Point -siirtoprotokollaan ja ohjelmistoarkkitehtuuriin.
Intelin ensimmäinen PCIe 2.0 yhteensopiva piirisarja oli X38, ja ensimmäisten siihen pohjautuvien emolevyjen toimitukset alkoivat eri valmistajilta (Abit, Asus, Gigabyte) lokakuussa 2007. AMD alkoi tukea PCIe 2.0:aa AMD 700 -piirisarjasta ja NVIDIA MCP72 -piirisarjasta. Kaikki Intelin edelliset piirisarjat, mukaan lukien Intel P35 tukivat PCIe 1.1 tai 1.0a -standardia.
PCIe 2.0 käyttää 1.x -liitännän tapaan 8b/10b-koodausta, toimittaen tehollisen 4 Gbit/s siirtonopeuden per kaista.
PCI Express 2.1 tukee suurta osaa PCIe 3.0:lle suunnitelluista käsittely-, tuki- ja ongelmanratkaisupäivityksistä. Sen siirtonopeudet ovat tosin samat, kuin PCIe 2.0 -liitännässä, mutta osa 2.1-standardille suunnitelluista korteista ei ole yhteensopivia joidenkin vanhempien 1.0 tai 1.0a -emolevyjen kanssa, koska 2.1-standardin kortit ottavat enemmän tehoa PCIe-liitännästä. Useille 1.1-standardin emolevyille on saatavilla BIOS-päivitys, joka tekee niistä yhteensopivia 2.1-korttien kanssa.
PCI Express 3.0 tuli saataville marraskuussa 2010 useiden viivästymisten jälkeen. Tätä ennen elokuussa 2007, PCI-SIG oli ilmoittanut, että tuleva PCI Express 3.0 pystyisi 8 GT/s siirtonopeuksiin, mutta olisi silti samalla taaksepäin yhteensopiva edellisten PCIe-versioiden kanssa. Samalla ilmoitettiin, että PCI Express 3.0 lopullinen määritelmä tulisi viivästymään vuodelle 2011.
Kuuden kuukauden tutkimusten jälkeen PCI-SIG totesi 8 GT/s siirtonopeuksien toteuttamisen mahdolliseksi jo olemassa olevalla edullisilla materiaaleilla, tekniikalla ja infrastruktuurilla ilman, että menetetään yhteensopivuus PCIe-protokollapinoon (PCIe protocol stack).
PCIe 3.0 -standardissa siirrytään edellisissä versioissa käytetystä 8b/10b-koodauksesta 128b/130b-koodaukseen.
18. marraskuuta 2010 PCI Special Interest Group julkaisi lopullisen PCI Express 3.0 -standardin.
PCI Express 3.1 on suunniteltu julkaistavaksi vuoden 2013 lopulla tai 2014 alussa.
PCI-SIG julkaisi 29. marraskuuta 2011 PCI Express 4.0 -standardin, joka pystyy 16 GT/s siirtonopeuksiin kuparipohjaisella tekniikalla. 4.0:n lopullinen julkaisu on PCI-SIGin mukaan vuoden 2016 loppupuolella. Liitäntä tulee käyttämään PCIe 3.0:n tapaan 128b/130b-koodausta ja on edeltäjiensä tapaan yhteensopiva edellisten PCIe-sukupolvien kanssa.
PCIe -liittimiä on standardoitu muun muassa ×1, ×4, ×8 ja ×16 -väylille. Pienemmällä liittimellä varustettuja laitteita voidaan liittää suurempaan liittimeen. Arkkitehtuurin ja signaloinnin puolesta suuremman väylän laite voitaisiin liittää myös pienempään väylään, sillä kytkettäessä laitteet säätävät nopeutensa käytössä olevien linjojen mukaan. Tosin useimmissa tapauksissa suuremmat liittimet eivät kuitenkaan ole fyysisesti yhteensopivia pienempien kanssa.
Vanhempia PCI-väylää käyttäviä laajennuskortteja ei voi liittää PCIe-väylään eikä toisinpäin, sillä väylät ovat täysin erilaisia eivätkä millään tasolla yhteensopivia tai samankaltaisia nimeään ja käyttötarkoitustaan lukuun ottamatta.
Ensimmäisenä vanhoista väyläratkaisuista PCIe:hen ovat siirtyneet suuria tiedonsiirtonopeuksia tarvitsevat laitteet kuten esimerkiksi tehokkaat näytönohjaimet, verkkokortit ja kiintolevyohjaimet. Nykyään myös muita oheislaitteita on yhä enemmän tarjolla PCIe -liitännällä, esimerkkinä suurinopeuksiset SSD-levyt.