PCI Express - PCI Express
| Perifer komponent Interconnect Express | |
|
PCI Express -logo
| |
| År oprettet | 2003 |
|---|---|
| Lavet af | |
| Erstatter | |
| Bredde i bits | 1 pr. Bane (op til 16 baner) |
| Antal enheder | 1 på hvert slutpunkt for hver forbindelse. |
| Hastighed | Dual simplex (i hver retning) ; eksempler på enkeltfelts (× 1) og 16-sporet (× 16): |
| Stil | Seriel |
| Hotplugging -grænseflade | Ja (med ExpressCard , OCuLink , CFexpress eller U.2 ) |
| Ekstern grænseflade | Ja (med OCuLink eller PCI Express ekstern kabler ) |
| Internet side | pcisig |
- PCI Express × 4
- PCI Express × 16
- PCI Express × 1
- PCI Express × 16
- Konventionel PCI (32-bit, 5 V)
PCI Express ( Peripheral Component Interconnect Express ), officielt forkortet som PCIe eller PCIe , er en high-speed seriel computer ekspansion bus standard, designet til at erstatte den ældre PCI , PCI-X og AGP bus standarder. Det er den almindelige bundkort interface til personlige computeres grafikkort , harddisk værtsadaptere , SSD'er , Wi-Fi og Ethernet hardware-forbindelser. PCIe har adskillige forbedringer i forhold til de ældre standarder, herunder højere maksimal systembusgennemstrømning, lavere I/O -stiftantal og mindre fysisk fodaftryk, bedre ydelsesskalering for busenheder, en mere detaljeret fejldetekterings- og rapporteringsmekanisme (Advanced Error Reporting, AER), og indbygget hot-swap- funktionalitet. Nyere revisioner af PCIe -standarden giver hardware support til I/O -virtualisering .
Defineret ved sit antal baner (antallet af samtidige afsendelses- og modtagelinier af data som på en motorvej, der har trafik i begge retninger), bruges PCI Express -elektriske interface også i en række andre standarder, især det bærbare udvidelseskort grænseflade ExpressCard og computerlagringsgrænseflader SATA Express , U.2 (SFF-8639) og M.2 .
Formatspecifikationer vedligeholdes og udvikles af PCI-SIG (PCI Special Interest Group ), en gruppe på mere end 900 virksomheder, der også vedligeholder de konventionelle PCI- specifikationer.
Arkitektur
Konceptuelt er PCI Express-bussen en højhastigheds seriel udskiftning af den ældre PCI/PCI-X-bus. En af de vigtigste forskelle mellem PCI Express -bussen og den ældre PCI er bustopologien; PCI bruger en delt parallel busarkitektur , hvor PCI -værten og alle enheder deler et fælles sæt adresse, data og kontrollinjer. I modsætning hertil er PCI Express baseret på punkt-til-punkt- topologi med separate serielle links, der forbinder hver enhed til rodkomplekset (vært). På grund af sin delte bus -topologi er adgangen til den ældre PCI -bus voldgift (i tilfælde af flere mestre) og begrænset til en master ad gangen i en enkelt retning. Desuden begrænser det ældre PCI -urskema busuret til den langsomste periferiudstyr på bussen (uanset hvilke enheder der er involveret i bustransaktionen). I modsætning hertil understøtter et PCI Express-busforbindelse fuld-duplex- kommunikation mellem to slutpunkter, uden nogen iboende begrænsning af samtidig adgang på tværs af flere slutpunkter.
Med hensyn til busprotokol er PCI Express -kommunikation indkapslet i pakker. Arbejdet med at pakke data og pakke data og trafik med statusmeddelelser håndteres af transaktionslaget i PCI Express-porten (beskrevet senere). Radikale forskelle i elektrisk signalering og busprotokol kræver brug af en anden mekanisk formfaktor og ekspansionsstik (og dermed nye bundkort og nye adapterkort); PCI -slots og PCI Express -slots kan ikke udskiftes. På softwareniveau bevarer PCI Express bagudkompatibilitet med PCI; ældre PCI -systemsoftware kan registrere og konfigurere nyere PCI Express -enheder uden eksplicit understøttelse af PCI Express -standarden, selvom nye PCI Express -funktioner ikke er tilgængelige.
PCI Express -forbindelsen mellem to enheder kan variere i størrelse fra en til 16 baner . I et multibane-link er pakkedataene stribet på tværs af baner, og spidsdataoverførselshastigheder skaleres med den samlede linkbredde. Banetællingen forhandles automatisk under initialisering af enheden og kan begrænses af begge endepunkter. For eksempel kan et enkeltbanes PCI Express (× 1) -kort indsættes i en flerbanespalte (× 4, × 8 osv.), Og initialiseringscyklussen forhandler automatisk det højeste gensidigt understøttede banetælling. Linket kan dynamisk nedkonfigurere sig selv til at bruge færre baner, hvilket giver en fejltolerance i tilfælde af dårlige eller upålidelige baner. PCI Express -standarden definerer linkbredder på × 1, × 2, × 4, × 8 og × 16. Op til og med PCIe 5.0, × 12 og × 32 links blev også defineret, men aldrig brugt. Dette gør det muligt for PCI Express-bussen at betjene både omkostningsfølsomme applikationer, hvor der ikke er behov for høj kapacitet, og præstationskritiske applikationer som 3D-grafik, netværk ( 10 Gigabit Ethernet eller multiport Gigabit Ethernet ) og virksomhedslager ( SAS eller Fibre Channel ) . Slots og stik er kun defineret for en delmængde af disse bredder, med linkbredder imellem ved hjælp af den næste større fysiske slotstørrelse.
Som referencepunkt har en PCI-X (133 MHz 64-bit) enhed og en PCI Express 1.0-enhed, der bruger fire baner (× 4) nogenlunde den samme spidse overførselshastighed i en retning på 1064 MB/s. PCI Express-bussen har potentiale til at fungere bedre end PCI-X-bussen i tilfælde, hvor flere enheder overfører data samtidigt, eller hvis kommunikation med PCI Express-periferienheden er tovejs .
Sammenkobling
PCI Express -enheder kommunikerer via en logisk forbindelse kaldet en interconnect eller et link . Et link er en punkt-til-punkt-kommunikationskanal mellem to PCI Express-porte, der giver dem mulighed for at sende og modtage almindelige PCI-anmodninger (konfiguration, I/O eller hukommelse læse/skrive) og afbrydelser ( INTx , MSI eller MSI-X ) . På det fysiske niveau består et link af en eller flere baner . Lavhastighedsudstyr (f.eks. Et 802.11 Wi-Fi- kort ) bruger et enkeltbanes (× 1) link, mens en grafikkort typisk bruger et meget bredere og derfor hurtigere 16-sporet (× 16) link.
Lane
En bane består af to differentielle signalpar , med et par til modtagelse af data og det andet til transmission. Hver bane er således sammensat af fire tråde eller signalspor . Konceptuelt bruges hver bane som en full-duplex byte-strøm , der transporterer datapakker i otte-bit "byte" -format samtidigt i begge retninger mellem slutpunkter i et link. Fysiske PCI Express -links kan indeholde 1, 4, 8 eller 16 baner. Banetællinger skrives med et "×" præfiks (f.eks. "× 8" repræsenterer et otte-felts kort eller slot), hvor × 16 er den største størrelse til almindelig brug. Banestørrelser omtales også via udtrykkene "bredde" eller "af" f.eks. Kunne en otte-sporet slot betegnes som en "med 8" eller som "8 baner bred."
Se mekaniske kortstørrelser nedenfor .
Seriel bus
Den bundne serielle busarkitektur blev valgt frem for den traditionelle parallelle bus på grund af sidstnævnte iboende begrænsninger, herunder halvdupleksdrift , overskydende signalantal og iboende lavere båndbredde på grund af timing skævhed . Tidsforskydning skyldes separate elektriske signaler inden for et parallelt interface, der bevæger sig gennem ledere af forskellig længde, på potentielt forskellige printkort (PCB) lag og muligvis forskellige signalhastigheder . På trods af at de transmitteres samtidigt som et enkelt ord , har signaler på en parallel grænseflade forskellig rejsetid og ankommer til deres destinationer på forskellige tidspunkter. Når grænsefladeurets periode er kortere end den største tidsforskel mellem signalankomster, er det ikke længere muligt at gendanne det transmitterede ord. Da timing skævhed over en parallel bus kan udgøre et par nanosekunder, er den resulterende båndbreddebegrænsning i intervallet på hundredvis af megahertz.
En seriel grænseflade udviser ikke timing skævhed, fordi der kun er ét differentialesignal i hver retning inden for hver bane, og der ikke er noget eksternt kloksignal, da clockinformation er indlejret i selve det serielle signal. Som sådan er typiske båndbreddebegrænsninger for serielle signaler inden for multi-gigahertz-området. PCI Express er et eksempel på den generelle tendens til at erstatte parallelle busser med serielle forbindelser; andre eksempler omfatter Serial ATA (SATA), USB , Serial Attached SCSI (SAS), FireWire (IEEE 1394) og RapidIO . I digital video er eksempler på almindelig brug DVI , HDMI og DisplayPort .
Flerkanals serielt design øger fleksibiliteten med sin evne til at allokere færre baner til langsommere enheder.
Formfaktorer
PCI Express (standard)
Et PCI Express -kort passer ind i en slot af sin fysiske størrelse eller større (med × 16 som det største anvendte), men passer muligvis ikke ind i et mindre PCI Express -slot; for eksempel passer et × 16 -kort muligvis ikke ind i et × 4 eller × 8 -slot. Nogle slots bruger åbne stik til at tillade fysisk længere kort og forhandle den bedst tilgængelige elektriske og logiske forbindelse.
Antallet af baner, der faktisk er forbundet til en slot, kan også være færre end det antal, der understøttes af den fysiske slotstørrelse. Et eksempel er en × 16 slot, der kører på × 4, som accepterer ethvert × 1, × 2, × 4, × 8 eller × 16 kort, men kun giver fire baner. Dens specifikation kan læse som "× 16 (× 4 mode)", mens "× mekanisk @ × elektrisk" notation ("× 16 @ × 4") også er almindelig. Fordelen er, at sådanne slots kan rumme et større udvalg af PCI Express -kort uden at kræve bundkortets hardware for at understøtte den fulde overførselshastighed. Standard mekaniske størrelser er × 1, × 4, × 8 og × 16. Kort med et forskelligt antal baner skal bruge den næste større mekaniske størrelse (dvs. et × 2 kort bruger størrelsen × 4, eller et × 12 kort bruger størrelsen × 16).
Selve kortene er designet og fremstillet i forskellige størrelser. For eksempel bruger solid-state-drev (SSD'er), der kommer i form af PCI Express-kort, ofte HHHL (halv højde, halv længde) og FHHL (fuld højde, halv længde) til at beskrive kortets fysiske dimensioner.
| PCI -korttype | Dimensioner højde × længde, maks | |
|---|---|---|
| (mm) | (i) | |
| Fuld længde | 111,15 × 312,00 | 4.376 × 12.283 |
| Halvlængde | 111,15 × 167,65 | 4.376 × 6.600 |
| Lav profil/slank | 68,90 × 167,65 | 2.731 × 6.600 |
Ikke-standard grafikkortformfaktorer
Moderne (siden c.2012) gaming grafikkort normalt overstige højden samt tykkelsen specificeret i PCI Express standarden, på grund af behovet for mere dygtige og mere stille ventilatorer , som gaming grafikkort ofte udsender hundredvis af watt varme. Moderne computerkasser er ofte bredere for at rumme disse højere kort, men ikke altid. Da kort i fuld længde (312 mm) er ualmindelige, kan moderne tilfælde undertiden ikke passe til dem. Tykkelsen af disse kort optager typisk også plads til 2 PCIe -slots. Faktisk varierer selv metoden til måling af kortene mellem leverandører, hvor nogle inkluderer metalbeslagets størrelse i dimensioner og andre ikke.
For eksempel måler et 2020 Sapphire -kort 135 mm i højden (undtagen metalbeslaget), hvilket overstiger PCIe -standardhøjden med 28 mm. Et andet kort fra XFX måler 55 mm tykt (dvs. 2,7 PCI -slots på 20,32 mm) og fylder 3 PCIe -slots. Asus GeForce RTX 3080 10 GB STRIX GAMING OC -grafikkort er et kort med to slots, der har dimensioner på 318,5 mm × 140,1 mm × 57,8 mm, der overstiger henholdsvis PCI Express 'maksimale længde, højde og tykkelse.
Pinout
Følgende tabel identificerer lederne på hver side af kantstikket på et PCI Express -kort. Loddesiden af printkortet (PCB) er A -siden, og komponentsiden er B -siden. PRSNT1# og PRSNT2# benene skal være lidt kortere end resten for at sikre, at et kort med varmt stik er sat helt ind. WAKE# -pinden bruger fuld spænding til at vække computeren, men skal trækkes højt fra standby -strømmen for at angive, at kortet er vækkeegnet.
| Pin | Side B | Side A | Beskrivelse | Pin | Side B | Side A | Beskrivelse | |
|---|---|---|---|---|---|---|---|---|
| 1 | +12 V | PRSNT1# | Skal oprette forbindelse til den fjerneste PRSNT2# pin | 50 | HSOp (8) | Reserveret | Bane 8 sender data, + og - | |
| 2 | +12 V | +12 V | Hovedstrømstifter | 51 | HSOn (8) | Jord | ||
| 3 | +12 V | +12 V | 52 | Jord | HSIp (8) | Bane 8 modtager data, + og - | ||
| 4 | Jord | Jord | 53 | Jord | HSIn (8) | |||
| 5 | SMCLK | TCK | SMBus og JTAG portstifter | 54 | HSOp (9) | Jord | Bane 9 sender data, + og - | |
| 6 | SMDAT | TDI | 55 | HSOn (9) | Jord | |||
| 7 | Jord | TDO | 56 | Jord | HSIp (9) | Bane 9 modtager data, + og - | ||
| 8 | +3,3 V | TMS | 57 | Jord | HSIn (9) | |||
| 9 | TRST# | +3,3 V | 58 | HSOp (10) | Jord | Bane 10 sender data, + og - | ||
| 10 | +3,3 V aux | +3,3 V | Standby -strøm | 59 | HSOn (10) | Jord | ||
| 11 | VÅGNE# | PERST# | Link reaktivering; grundlæggende nulstilling | 60 | Jord | HSIp (10) | Bane 10 modtager data, + og - | |
| Nøglehak | 61 | Jord | HSIn (10) | |||||
| 12 | CLKREQ# | Jord | Ur Anmodningssignal | 62 | HSOp (11) | Jord | Bane 11 sender data, + og - | |
| 13 | Jord | REFCLK+ | Reference ur differential par | 63 | HSOn (11) | Jord | ||
| 14 | HSOp (0) | REFCLK− | Bane 0 sender data, + og - | 64 | Jord | HSIp (11) | Bane 11 modtager data, + og - | |
| 15 | HSOn (0) | Jord | 65 | Jord | HSIn (11) | |||
| 16 | Jord | HSIp (0) | Bane 0 modtager data, + og - | 66 | HSOp (12) | Jord | Bane 12 sender data, + og - | |
| 17 | PRSNT2# | HSIn (0) | 67 | HSOn (12) | Jord | |||
| 18 | Jord | Jord | 68 | Jord | HSIp (12) | Bane 12 modtager data, + og - | ||
| PCI Express × 1 -kort ender ved pin 18 | 69 | Jord | HSIn (12) | |||||
| 19 | HSOp (1) | Reserveret | Bane 1 sender data, + og - | 70 | HSOp (13) | Jord | Bane 13 sender data, + og - | |
| 20 | HSOn (1) | Jord | 71 | HSOn (13) | Jord | |||
| 21 | Jord | HSIp (1) | Bane 1 modtager data, + og - | 72 | Jord | HSIp (13) | Bane 13 modtager data, + og - | |
| 22 | Jord | HSIn (1) | 73 | Jord | HSIn (13) | |||
| 23 | HSOp (2) | Jord | Bane 2 sender data, + og - | 74 | HSOp (14) | Jord | Bane 14 sender data, + og - | |
| 24 | HSOn (2) | Jord | 75 | HSOn (14) | Jord | |||
| 25 | Jord | HSIp (2) | Bane 2 modtager data, + og - | 76 | Jord | HSIp (14) | Bane 14 modtager data, + og - | |
| 26 | Jord | HSIn (2) | 77 | Jord | HSIn (14) | |||
| 27 | HSOp (3) | Jord | Bane 3 sender data, + og - | 78 | HSOp (15) | Jord | Bane 15 sender data, + og - | |
| 28 | HSOn (3) | Jord | 79 | HSOn (15) | Jord | |||
| 29 | Jord | HSIp (3) | Bane 3 modtager data, + og - | 80 | Jord | HSIp (15) | Bane 15 modtager data, + og - | |
| 30 | PWRBRK# | HSIn (3) | 81 | PRSNT2# | HSIn (15) | |||
| 31 | PRSNT2# | Jord | 82 | Reserveret | Jord | |||
| 32 | Jord | Reserveret | ||||||
| PCI Express × 4 -kort ender med pin 32 | ||||||||
| 33 | HSOp (4) | Reserveret | Bane 4 sender data, + og - | |||||
| 34 | HSOn (4) | Jord | ||||||
| 35 | Jord | HSIp (4) | Bane 4 modtager data, + og - | |||||
| 36 | Jord | HSIn (4) | ||||||
| 37 | HSOp (5) | Jord | Bane 5 sender data, + og - | |||||
| 38 | HSOn (5) | Jord | ||||||
| 39 | Jord | HSIp (5) | Bane 5 modtager data, + og - | |||||
| 40 | Jord | HSIn (5) | ||||||
| 41 | HSOp (6) | Jord | Bane 6 sender data, + og - | |||||
| 42 | HSOn (6) | Jord | ||||||
| 43 | Jord | HSIp (6) | Bane 6 modtager data, + og - | Legende | ||||
| 44 | Jord | HSIn (6) | Jordstift | Nul volt reference | ||||
| 45 | HSOp (7) | Jord | Bane 7 sender data, + og - | Power pin | Leverer strøm til PCIe -kortet | |||
| 46 | HSOn (7) | Jord | Kort til vært-pin | Signal fra kortet til bundkortet | ||||
| 47 | Jord | HSIp (7) | Bane 7 modtager data, + og - | Værts-til-kort-pin | Signal fra bundkortet til kortet | |||
| 48 | PRSNT2# | HSIn (7) | Åben afløb | Kan trækkes lavt eller registreres af flere kort | ||||
| 49 | Jord | Jord | Sansestift | Bundet sammen på kortet | ||||
| PCI Express × 8 -kort ender med pin 49 | Reserveret | Ikke brugt i øjeblikket, tilslut ikke | ||||||
Strøm
Alle PCI Express -kort kan forbruge op til 3 A kl+3,3 V (9,9 W ). Mængden af +12 V og den samlede strøm, de kan forbruge, afhænger af korttypen:
- × 1 kort er begrænset til 0,5 A ved +12 V (6 W) og 10 W kombineret.
- × 4 og bredere kort er begrænset til 2,1 A ved +12 V (25 W) og 25 W kombineret.
- Et kort i fuld størrelse × 1 kan trække op til 25 W grænserne efter initialisering og softwarekonfiguration som en "højeffektiv enhed".
- Et grafikkort i fuld størrelse × 16 kan trække op til 5,5 A ved +12 V (66 W) og 75 W kombineret efter initialisering og softwarekonfiguration som en "kraftfuld enhed".
Valgfrie stik tilføjer 75 W (6-ben) eller 150 W (8-ben) +12 V effekt for i alt op til 300 W ( 2 × 75 W + 1 × 150 W ).
- Sense0 pin er forbundet til jorden med kablet eller strømforsyningen, eller flyder om bord, hvis kablet ikke er tilsluttet.
- Sense1 -stiften er forbundet til jorden med kablet eller strømforsyningen, eller flyder om bord, hvis kablet ikke er tilsluttet.
Nogle kort bruger to 8-benede stik, men dette er ikke blevet standardiseret endnu fra 2018, derfor må sådanne kort ikke have det officielle PCI Express-logo. Denne konfiguration tillader i alt 375 W ( 1 × 75 W + 2 × 150 W ) og vil sandsynligvis blive standardiseret af PCI-SIG med PCI Express 4.0-standarden. Det 8-benede PCI Express-stik kan forveksles med EPS12V- stikket, som hovedsageligt bruges til strømforsyning af SMP- og multi-core-systemer. Strømkontakterne er varianter af Molex Mini-Fit Jr.-seriens stik.
| Stifter | Kvinde/fatning på PS -kabel |
Mand/højre vinkel header på printkort |
|---|---|---|
| 6-benet | 45559-0002 | 45558-0003 |
| 8-benet | 45587-0004 | 45586-0005, 45586-0006 |
| 6-benet strømstik (75 W) | 8-benet strømstik (150 W) | ||||
|---|---|---|---|---|---|
| Pin | Beskrivelse | Pin | Beskrivelse | ||
| 1 | +12 V | 1 | +12 V | ||
| 2 | Ikke tilsluttet (normalt også +12 V) | 2 | +12 V | ||
| 3 | +12 V | 3 | +12 V | ||
| 4 | Sense1 (8-benet tilsluttet) | ||||
| 4 | Jord | 5 | Jord | ||
| 5 | Følelse | 6 | Sense0 (6-benet eller 8-benet tilsluttet) | ||
| 6 | Jord | 7 | Jord | ||
| 8 | Jord | ||||
PCI Express minikort
PCI Express Mini Card (også kendt som Mini PCI Express , Mini PCIe , Mini PCI-E , mPCIe og PEM ), baseret på PCI Express, er en erstatning for Mini PCI formfaktoren. Det er udviklet af PCI-SIG . Værtsenheden understøtter både PCI Express og USB 2.0 -forbindelse, og hvert kort kan bruge enten standard. De fleste bærbare computere, der blev bygget efter 2005, bruger PCI Express til udvidelseskort; fra 2015 bevæger mange leverandører sig imidlertid mod at bruge den nyere M.2 -formfaktor til dette formål.
På grund af forskellige dimensioner er PCI Express-minikort ikke fysisk kompatible med standard PCI Express-slots i fuld størrelse; der findes imidlertid passive adaptere, der lader dem bruges i slots i fuld størrelse.
Fysiske dimensioner
Dimensioner på PCI Express -minikort er 30 mm × 50,95 mm (bredde × længde) for et fuldt minikort. Der er et 52-benet kantstik , der består af to forskudte rækker på en 0,8 mm afstand. Hver række har otte kontakter, et hul svarende til fire kontakter, derefter yderligere 18 kontakter. Plader har en tykkelse på 1,0 mm, eksklusive komponenterne. Et "halvt minikort" (undertiden forkortet som HMC) er også specificeret med omtrent halvdelen af den fysiske længde på 26,8 mm.
Elektrisk interface
PCI Express Mini Card kantstik giver flere forbindelser og busser:
- PCI Express × 1 (med SMBus)
- USB 2.0
- Ledninger til diagnostiske lysdioder til trådløst netværk (dvs. Wi-Fi ) status på computerens chassis
- SIM -kort til GSM- og WCDMA -applikationer (UIM -signaler på spec.)
- Fremtidig udvidelse til endnu en PCIe -bane
- 1,5 V og 3,3 V effekt
Mini-SATA (mSATA) variant
På trods af at dele Mini PCI Express -formfaktoren, er en mSATA -slot ikke nødvendigvis elektrisk kompatibel med Mini PCI Express. Af denne grund er det kun visse notebooks, der er kompatible med mSATA -drev. De fleste kompatible systemer er baseret på Intels Sandy Bridge -processorarkitektur ved hjælp af Huron River -platformen. Bærbare computere som Lenovos ThinkPad T-, W- og X -serier, der blev udgivet i marts – april 2011, understøtter et mSATA SSD -kort i deres WWAN -kortplads. ThinkPad Edge E220s/E420s og Lenovo IdeaPad Y460/Y560/Y570/Y580 understøtter også mSATA. Tværtimod kan L-serien blandt andre kun understøtte M.2-kort ved hjælp af PCIe-standarden i WWAN-slot.
Nogle notebooks (især Asus Eee PC , Apple MacBook Air og Dell mini9 og mini10) bruger en variant af PCI Express Mini Card som en SSD . Denne variant bruger de reserverede og flere ikke-reserverede ben til at implementere SATA- og IDE-grænsefladepassage, idet kun USB, jordlinjer og undertiden kernen PCIe × 1-bussen forbliver intakt. Dette gør "miniPCIe" flash- og solid-state-drev, der sælges til netbooks stort set uforenelige med ægte PCI Express Mini-implementeringer.
Den typiske Asus miniPCIe SSD er også 71 mm lang, hvilket får Dell 51 mm -modellen til ofte (forkert) at blive omtalt som halv længde. En ægte 51 mm Mini PCIe SSD blev annonceret i 2009 med to stablede PCB -lag, der giver mulighed for højere lagerkapacitet. Det annoncerede design bevarer PCIe -interface, hvilket gør det kompatibelt med standard mini PCIe -slot. Intet arbejdende produkt er endnu udviklet.
Intel har mange desktop-boards med PCIe × 1 Mini-Card-slot, der typisk ikke understøtter mSATA SSD. En liste over desktopkort, der indbygget understøtter mSATA i PCIe × 1 Mini-Card-slot (typisk multiplexeret med en SATA-port), findes på Intel Support-webstedet.
PCI Express M.2
M.2 erstatter mSATA -standarden og Mini PCIe. Computerbus -grænseflader, der leveres via M.2 -stikket, er PCI Express 3.0 (op til fire baner), Serial ATA 3.0 og USB 3.0 (en enkelt logisk port for hver af de to sidstnævnte). Det er op til producenten af M.2 -værten eller -enheden at vælge, hvilke grænseflader der skal understøttes, afhængigt af det ønskede niveau for værtssupport og enhedstype.
PCI Express ekstern kabler
PCI Express External Kabling (også kendt som External PCI Express , Cabled PCI Express eller ePCIe ) specifikationer blev frigivet af PCI-SIG i februar 2007.
Standardkabler og stik er defineret for × 1, × 4, × 8 og × 16 forbindelsesbredder med en overførselshastighed på 250 MB/s pr. Bane. PCI-SIG forventer også, at normen udvikler sig til at nå 500 MB/s, som i PCI Express 2.0. Et eksempel på brugen af kablet PCI Express er et metalhylster, der indeholder et antal PCIe-slots og PCIe-til-ePCIe-adapterkredsløb. Denne enhed ville ikke være mulig, hvis det ikke havde været for ePCIe -specifikationen.
PCI Express OCuLink
OCuLink (står for "optisk-kobberlink", da Cu er det kemiske symbol for kobber ) er en udvidelse til "kabelversionen af PCI Express", der fungerer som en konkurrent til version 3 af Thunderbolt-grænsefladen. Version 1.0 af OCuLink, udgivet i oktober 2015, understøtter op til PCIe 3.0 × 4 baner (8 GT/s , 3,9 GB/s) over kobberkabler; en fiberoptisk version kan komme frem i fremtiden.
OCuLink har i den nyeste version (OCuLink-2) op til 16 GB/s, mens den maksimale båndbredde for et Thunderbolt 4-kabel med fuld hastighed er 5 GB/s. Nogle leverandører kan designe deres stikprodukt for at kunne understøtte næste generations PCI Express 5.0, der kører med 4 GB/s pr. Bane til fremtidig korrektur og minimering af udviklingsomkostninger i løbet af de næste par år. Oprindeligt forventede PCI-SIG at bringe OCuLink til bærbare computere til tilslutning af kraftige eksterne GPU-bokse. Det viste sig at være en sjælden brug. I stedet blev OCuLink populær for PCIe -forbindelser i servere.
Afledte former
Mange andre formfaktorer bruger eller er i stand til at bruge PCIe. Disse omfatter:
- Kort i lav højde
- ExpressCard : Efterfølger til PC Card- formfaktoren (med × 1 PCIe og USB 2.0; hot-pluggable)
- PCI Express ExpressModule: En hot-pluggbar modulær formfaktor defineret til servere og arbejdsstationer
- XQD-kort : En PCI Express-baseret flashkortstandard af CompactFlash Association med × 2 PCIe
- CFexpress- kort: Et PCI Express-baseret flashkort af CompactFlash Association i tre formfaktorer, der understøtter 1 til 4 PCIe-baner
- SD -kort: SD Express -bussen, der blev introduceret i version 7.0 af SD -specifikationen, bruger et × 1 PCIe -link
- XMC : Svarende til formfaktoren CMC / PMC (VITA 42.3)
- AdvancedTCA : Et supplement til CompactPCI til større applikationer; understøtter seriel baserede bagplanstopologier
- AMC : Et supplement til AdvancedTCA -specifikationen; understøtter processor- og I/O -moduler på ATCA -kort (× 1, × 2, × 4 eller × 8 PCIe).
- FeaturePak : Et lille udvidelseskortformat (43 mm × 65 mm) til indlejrede applikationer med lille formfaktor, der implementerer to × 1 PCIe-links på et stik med høj densitet sammen med USB, I2C og op til 100 punkter I /O
- Universal IO : En variant fra Super Micro Computer Inc designet til brug i lavprofil rackmonteret chassis. Det har stikbeslaget vendt, så det ikke kan passe i en normal PCI Express-stikkontakt, men det er pin-kompatibelt og kan indsættes, hvis beslaget fjernes.
- M.2 (tidligere kendt som NGFF)
- M-PCIe bringer PCIe 3.0 til mobile enheder (f.eks. Tablets og smartphones) over det fysiske lag M-PHY .
- U.2 (tidligere kendt som SFF-8639)
PCIe -stikket kan også bære andre protokoller end PCIe. Nogle 9xx-seriens Intel-chipsæt understøtter Serial Digital Video Out , en proprietær teknologi, der bruger et slot til at overføre videosignaler fra værts-CPU'ens integrerede grafik i stedet for PCIe ved hjælp af et understøttet tilføjelsesprogram.
PCIe-transaktionslagsprotokollen kan også bruges over nogle andre sammenkoblinger, som ikke er elektrisk PCIe:
- Thunderbolt : En royaltyfri sammenkoblingsstandard fra Intel, der kombinerer DisplayPort- og PCIe-protokoller i en formfaktor, der er kompatibel med Mini DisplayPort . Thunderbolt 3.0 kombinerer også USB 3.1 og bruger USB-C formfaktoren i modsætning til Mini DisplayPort.
- USB4
Historie og revisioner
Mens den var i tidlig udvikling, blev PCIe oprindeligt omtalt som HSI (for High Speed Interconnect ), og undergik et navneskift til 3GIO (for 3. generation I/O ), før den endelig slog sig ned på sit PCI-SIG- navn PCI Express . En teknisk arbejdsgruppe ved navn Arapaho Work Group (AWG) udarbejdede standarden. For indledende udkast bestod AWG kun af Intel -ingeniører; efterfølgende udvidede AWG til at omfatte branchepartnere.
Siden har PCIe gennemgået flere store og mindre revisioner og forbedret ydeevnen og andre funktioner.
| Version | intro- indført |
Linjekode | Transfer rate |
Gennemstrømning | ||||
|---|---|---|---|---|---|---|---|---|
| × 1 | × 2 | × 4 | × 8 | × 16 | ||||
| 1.0 | 2003 | 8b/10b | 2,5 GT/s | 0,250 GB/s | 0,500 GB/s | 1.000 GB/s | 2.000 GB/s | 4.000 GB/s |
| 2.0 | 2007 | 8b/10b | 5,0 GT/s | 0,500 GB/s | 1.000 GB/s | 2.000 GB/s | 4.000 GB/s | 8.000 GB/s |
| 3.0 | 2010 | 128b/130b | 8,0 GT/s | 0,985 GB/s | 1,969 GB/s | 3.938 GB/s | 7,877 GB/s | 15,754 GB/s |
| 4.0 | 2017 | 128b/130b | 16,0 GT/s | 1,969 GB/s | 3.938 GB/s | 7,877 GB/s | 15,754 GB/s | 31.508 GB/s |
| 5.0 | 2019 | 128b/130b | 32,0 GT/s | 3.938 GB/s | 7,877 GB/s | 15,754 GB/s | 31.508 GB/s | 63.015 GB/s |
| 6.0 (planlagt) | 2021 | PAM-4 + 256B FLIT + FEC |
64,0 GT/s 32,0 G Bd |
8.000 GB/s | 16.000 GB/s | 32.000 GB/s | 64.000 GB/s | 128.000 GB/s |
- Noter
PCI Express 1.0a
I 2003 introducerede PCI-SIG PCIe 1.0a med en datahastighed pr. Fil på 250 MB/s og en overførselshastighed på 2,5 gigatransfers pr. Sekund (GT/s).
Overførselshastighed udtrykkes i overførsler pr. Sekund i stedet for bits pr. Sekund, fordi antallet af overførsler inkluderer overheadbitene, som ikke giver yderligere gennemstrømning; PCIe 1.x bruger et 8b/10b -kodningsskema , hvilket resulterer i en 20% (= 2/10) overhead på råkanalbåndbredden. Så i PCIe -terminologien refererer overførselshastighed til den kodede bithastighed: 2,5 GT/s er 2,5 Gbps på det kodede serielle link. Dette svarer til 2,0 Gbps forudkodede data eller 250 MB/s, der omtales som gennemløb i PCIe.
PCI Express 1.1
I 2005 introducerede PCI-SIG PCIe 1.1. Denne opdaterede specifikation indeholder præciseringer og flere forbedringer, men er fuldt ud kompatibel med PCI Express 1.0a. Der blev ikke foretaget ændringer i datahastigheden.
PCI Express 2.0
PCI-SIG annoncerede tilgængeligheden af PCI Express Base 2.0-specifikationen den 15. januar 2007. PCIe 2.0-standarden fordobler overførselshastigheden sammenlignet med PCIe 1.0 til 5 GT/s, og gennemspændingen per fil stiger fra 250 MB/s til 500 MB /s. Derfor kan et 16-lane PCIe-stik (× 16) understøtte en samlet gennemstrømning på op til 8 GB/s.
PCIe 2.0 bundkort slots er fuldt ud bagudkompatible med PCIe v1.x kort. PCIe 2.0 -kort er generelt også bagudkompatible med PCIe 1.x -bundkort ved hjælp af den tilgængelige båndbredde på PCI Express 1.1. Samlet set grafikkort eller bundkort designet til v2.0 -arbejde, hvor det andet er v1.1 eller v1.0a.
PCI-SIG sagde også, at PCIe 2.0 indeholder forbedringer af punkt-til-punkt dataoverførselsprotokollen og dens softwarearkitektur.
Intels første chipsæt med PCIe 2.0 var X38, og boards begyndte at blive sendt fra forskellige leverandører ( Abit , Asus , Gigabyte ) fra den 21. oktober 2007. AMD begyndte at understøtte PCIe 2.0 med sin AMD 700 -chipsæt -serie, og nVidia startede med MCP72 . Alle Intels tidligere chipsæt, herunder Intel P35 -chipsættet, understøttede PCIe 1.1 eller 1.0a.
Ligesom 1.x bruger PCIe 2.0 et 8b/10b-kodningsskema og leverer derfor en effektiv maks. 4 Gbit/s pr. overførselshastighed fra dens 5 GT/s rå datahastighed.
PCI Express 2.1
PCI Express 2.1 (med specifikationen dateret 4. marts 2009) understøtter en stor del af de forvaltnings-, support- og fejlfindingssystemer, der er planlagt til fuld implementering i PCI Express 3.0. Hastigheden er dog den samme som PCI Express 2.0. Stigningen i strøm fra stikket bryder bagudkompatibilitet mellem PCI Express 2.1 -kort og nogle ældre bundkort med 1.0/1.0a, men de fleste bundkort med PCI Express 1.1 -stik er forsynet med en BIOS -opdatering af deres producenter via hjælpeprogrammer for at understøtte bagudkompatibilitet af kort med PCIe 2.1.
PCI Express 3.0
PCI Express 3.0 Basespecifikation revision 3.0 blev gjort tilgængelig i november 2010 efter flere forsinkelser. I august 2007 meddelte PCI-SIG, at PCI Express 3.0 ville bære en bithastighed på 8 gigatransfers pr. Sekund (GT/s), og at det ville være bagudkompatibelt med eksisterende PCI Express-implementeringer. På det tidspunkt blev det også annonceret, at den endelige specifikation for PCI Express 3.0 ville blive forsinket til 2. kvartal 2010. Nye funktioner til PCI Express 3.0 -specifikationen omfatter en række optimeringer til forbedret signalering og dataintegritet, herunder sender- og modtagerudligning, PLL forbedringer, ur -datagendannelse og kanalforbedringer til topologi, der i øjeblikket understøttes.
Efter en seks måneders teknisk analyse af muligheden for at skalere PCI Express-forbindelsesbåndbredden fandt PCI-SIGs analyse, at 8 gigatransfers pr. Sekund kan fremstilles i almindelig silicium-procesteknologi og kan implementeres med eksisterende billige materialer og infrastruktur, samtidig med at den fulde kompatibilitet (med ubetydelig indvirkning) til PCI Express -protokolstakken opretholdes.
PCI Express 3.0 opgraderer kodningsskemaet til 128b/130b fra den tidligere 8b/10b -kodning , hvilket reducerer båndbredden overhead fra 20% af PCI Express 2.0 til cirka 1,54% (= 2/130). PCI Express 3.0's 8 GT/s -bithastighed leverer effektivt 985 MB/s pr. Bane, hvilket næsten fordobler banens båndbredde i forhold til PCI Express 2.0.
Den 18. november 2010 offentliggjorde PCI Special Interest Group officielt den færdige PCI Express 3.0 -specifikation til sine medlemmer for at bygge enheder baseret på denne nye version af PCI Express.
PCI Express 3.1
I september 2013 blev PCI Express 3.1 -specifikationen annonceret til udgivelse i slutningen af 2013 eller begyndelsen af 2014, og konsoliderede forskellige forbedringer af den offentliggjorte PCI Express 3.0 -specifikation på tre områder: strømstyring, ydeevne og funktionalitet. Den blev udgivet i november 2014.
PCI Express 4.0
Den 29. november 2011 annoncerede PCI-SIG foreløbigt PCI Express 4.0, der leverede en 16 GT/s-bithastighed, der fordobler båndbredden fra PCI Express 3.0, samtidig med at den bevarer baglæns og fremadrettet kompatibilitet i både softwaresupport og brugt mekanisk interface. PCI Express 4.0-specifikationer bringer også OCuLink-2, et alternativ til Thunderbolt . OCuLink version 2 har op til 16 GT/s (i alt 8 GB/s for × 4 baner), mens den maksimale båndbredde for et Thunderbolt 3 -link er 5 GB/s.
I august 2016 præsenterede Synopsys en testmaskine med PCIe 4.0 på Intel Developer Forum . Deres IP har fået licens til flere virksomheder, der planlægger at præsentere deres chips og produkter i slutningen af 2016.
PCI-SIG annoncerede officielt frigivelsen af den sidste PCI Express 4.0-specifikation den 8. juni 2017. Specifikationen inkluderer forbedringer i fleksibilitet, skalerbarhed og lavere strøm.
Mellanox Technologies annoncerede den første 100 Gbit/s netværksadapter med PCIe 4.0 den 15. juni 2016 og den første 200 Gbit/s netværksadapter med PCIe 4.0 den 10. november 2016.
IBM annoncerede den første CPU med PCIe 4.0 -understøttelse, POWER9 , den 5. december 2017 som en del af AC922 -systemmeddelelsen.
NETINT Technologies introducerede den første NVMe SSD baseret på PCIe 4.0 den 17. juli 2018 forud for Flash Memory Summit 2018
AMD annoncerede den 9. januar 2019, at dets kommende Zen 2 -baserede processorer og X570 -chipsæt ville understøtte PCIe 4.0. AMD havde håbet at muliggøre delvis support til ældre chipsæt, men ustabilitet forårsaget af bundkortspor, der ikke var i overensstemmelse med PCIe 4.0 -specifikationer, gjorde det umuligt.
Intel frigav deres første mobile CPU'er med PCI express 4.0-understøttelse i midten af 2020 som en del af Tiger Lake- mikroarkitekturen.
PCI Express 5.0
I juni 2017 annoncerede PCI-SIG den foreløbige specifikation for PCI Express 5.0. Båndbredden forventedes at stige til 32 GT/s, hvilket gav 63 GB/s i hver retning i en 16-sporet konfiguration. Udkastet til spec forventedes at blive standardiseret i 2019. I første omgang blev 25,0 GT/s også overvejet af teknisk gennemførlighed.
Den 7. juni 2017 på PCI-SIG DevCon optog Synopsys den første demonstration af PCI Express 5.0 ved 32GT/s.
Den 31. maj 2018 annoncerede PLDA tilgængeligheden af deres XpressRICH5 PCIe 5.0 Controller IP baseret på udkast 0.7 til PCIe 5.0 -specifikationen samme dag.
Den 10. december 2018 udgav PCI SIG version 0.9 af PCIe 5.0 -specifikationen til sine medlemmer, og den 17. januar 2019 meddelte PCI SIG, at version 0.9 var blevet ratificeret, med version 1.0 målrettet til frigivelse i første kvartal af 2019.
Den 29. maj 2019 annoncerede PCI-SIG officielt frigivelsen af den sidste PCI-Express 5.0-specifikation.
Den 20. november 2019 præsenterede Jiangsu Huacun den første PCIe 5.0 Controller HC9001 i en 12 nm fremstillingsproces. Produktionen startede i 2020.
PCI Express 6.0
Den 18. juni 2019 annoncerede PCI-SIG udviklingen af PCI Express 6.0-specifikationen. Båndbredden forventes at stige til 64 GT/s, hvilket giver 126 GB/s i hver retning i en 16-lane konfiguration med en målfrigivelsesdato i 2021. Den nye standard anvender 4-niveau pulsamplitude modulering (PAM-4) med en low-latency forward error correction (FEC) i stedet for non-return-to-zero (NRZ) modulering. I modsætning til tidligere PCI Express-versioner bruges korrektion af fremadrettede fejl til at øge dataintegriteten, og PAM-4 bruges som liniekode, så to bits overføres pr. Overførsel. Med 64 GT/s dataoverførselshastighed (rå bithastighed) er op til 252 GB/s mulig i × 16 konfiguration.
Den 24. februar 2020 blev PCI Express 6.0 revision 0.5 -specifikationen (et "første udkast" med alle arkitektoniske aspekter og krav defineret) frigivet.
Den 5. november 2020 blev PCI Express 6.0 revision 0.7 -specifikationen (et "komplet udkast" med elektriske specifikationer valideret via testchips) frigivet.
Den 6. oktober 2021 blev PCI Express 6.0 revision 0.9 -specifikationen (et "endeligt udkast") frigivet.
Udvidelser og fremtidige retninger
Nogle leverandører tilbyder PCIe frem for fiberprodukter, men disse finder generelt kun anvendelse i specifikke tilfælde, hvor gennemsigtig PCIe -brodannelse foretrækkes frem for at bruge en mere almindelig standard (f.eks. InfiniBand eller Ethernet ), der kan kræve yderligere software til at understøtte det; nuværende implementeringer fokuserer på afstand frem for rå båndbredde og implementerer typisk ikke et fuldt × 16 link.
Thunderbolt blev co-udviklet af Intel og Apple som en almindelig højhastighedsgrænseflade, der kombinerer et logisk PCIe-link med DisplayPort og var oprindeligt tænkt som en fiberbaseret grænseflade, men på grund af tidlige vanskeligheder med at oprette en forbrugervenlig fiberforbindelse, næsten alle implementeringer er kobbersystemer. En bemærkelsesværdig undtagelse, Sony VAIO Z VPC-Z2, bruger en ikke-standardiseret USB-port med en optisk komponent til at oprette forbindelse til en påhængsmodul PCIe-skærmadapter. Apple har været den primære driver til Thunderbolt -adoption gennem 2011, selvom flere andre leverandører har annonceret nye produkter og systemer med Thunderbolt. Thunderbolt 3 danner grundlaget for USB4 -standarden.
Mobil PCIe specifikation (forkortet til M-PCIe ) gør det muligt for PCI Express-arkitektur til at operere over MIPI Alliance 's M-PHY fysiske lag teknologi. Med udgangspunkt i allerede eksisterende udbredt anvendelse af M-PHY og dets laveffektdesign lader Mobile PCIe mobile enheder bruge PCI Express.
Udkast til proces
Der er 5 primære udgivelser/kontrolpunkter i en PCI-SIG-specifikation:
- Kladde 0.3 (koncept): denne udgivelse kan have få detaljer, men skitserer den generelle tilgang og mål.
- Udkast 0.5 (første udkast): denne udgivelse har et komplet sæt arkitektoniske krav og skal fuldt ud opfylde målene i 0.3 -udkastet.
- Kladde 0.7 (komplet kladde): denne udgivelse skal have et komplet sæt funktionelle krav og metoder defineret, og der må ikke tilføjes nogen ny funktionalitet til specifikationen efter denne udgivelse. Inden udgivelsen af dette udkast, elektriske specifikationer skal have været valideret via test silicium.
- Kladde 0.9 (sidste udkast): Denne udgivelse giver PCI-SIG-medlemsvirksomheder mulighed for at foretage en intern gennemgang af intellektuel ejendomsret, og der er ikke tilladt funktionelle ændringer efter dette udkast.
- 1.0 (endelig udgivelse): dette er den endelige og endelige specifikation, og eventuelle ændringer eller forbedringer sker gennem henholdsvis Errata -dokumentation og Engineering Change Notices (ECN'er).
Historisk set begynder de tidligste brugere af en ny PCIe -specifikation generelt at designe med Draft 0.5, da de med sikkerhed kan opbygge deres applikationslogik omkring den nye båndbreddefinition og ofte endda begynde at udvikle til nye protokolfunktioner. På udkast 0,5 -stadiet er der dog stadig en stor sandsynlighed for ændringer i den faktiske implementering af PCIe -protokollag, så designere, der er ansvarlige for at udvikle disse blokke internt, kan være mere tøvende med at begynde arbejdet end dem, der bruger interface IP fra eksterne kilder.
Resumé af hardware -protokol
PCIe-linket er bygget op omkring dedikerede ensrettede par af serielle (1-bit), punkt-til-punkt-forbindelser kendt som baner . Dette står i skarp kontrast til den tidligere PCI-forbindelse, som er et busbaseret system, hvor alle enheder deler den samme tovejs, 32-bit eller 64-bit parallelle bus.
PCI Express er en lagdelt protokol , der består af et transaktionslag , et datalinklag og et fysisk lag . Data Link Layer er opdelt til at omfatte en Media Access Control (MAC) underlaget. Det fysiske lag er opdelt i logiske og elektriske underlag. Fysisk logisk-underlag indeholder et fysisk kodende underlag (PCS). Betingelserne er lånt fra IEEE 802 -netværksprotokolmodellen.
Fysisk lag
| Baner | Stifter | Længde | ||
|---|---|---|---|---|
| i alt | Variabel | i alt | Variabel | |
| × 1 | 2 × 18 = 36 | 2 × 7 = 14 | 25 mm | 7,65 mm |
| × 4 | 2 × 32 = 64 | 2 × 21 = 42 | 39 mm | 21,65 mm |
| × 8 | 2 × 49 = 98 | 2 × 38 = 76 | 56 mm | 38,65 mm |
| × 16 | 2 × 82 = 164 | 2 × 71 = 142 | 89 mm | 71,65 mm |
PCIe Physical Layer ( PHY , PCIEPHY , PCI Express PHY eller PCIe PHY ) specifikationen er opdelt i to underlag, der svarer til elektriske og logiske specifikationer. Det logiske underlag er undertiden yderligere opdelt i et MAC -underlag og et PCS, selvom denne division ikke formelt er en del af PCIe -specifikationen. En specifikation udgivet af Intel, PHY Interface for PCI Express (PIPE), definerer MAC/PCS funktionelle partitionering og grænsefladen mellem disse to underlag. PIPE -specifikationen identificerer også det fysiske medievedhæftningslag (PMA), som omfatter serialiserings-/deserialiseringsprogrammet (SerDes) og andre analoge kredsløb; Da SerDes -implementeringer varierer meget mellem ASIC -leverandører, angiver PIPE imidlertid ikke en grænseflade mellem PCS og PMA.
På det elektriske niveau består hver bane af to ensrettede differentialpar, der opererer ved 2,5, 5, 8 eller 16 Gbit /s, afhængigt af de forhandlede muligheder. Send og modtag er separate differentialpar, i alt fire datatråde pr. Bane.
En forbindelse mellem to PCIe -enheder er kendt som et link og er opbygget fra en samling af en eller flere baner . Alle enheder skal minimalt understøtte single-lane (× 1) link. Enheder kan eventuelt understøtte bredere links, der består af 2, 4, 8 eller 16 baner. Dette giver mulighed for meget god kompatibilitet på to måder:
- Et PCIe -kort passer fysisk (og fungerer korrekt) i ethvert slot, der er mindst lige så stort som det er (f.eks. Et × 1 -størrelse kort fungerer i en hvilken som helst slot);
- Et slot af en stor fysisk størrelse (f.eks. × 16) kan forbindes elektrisk med færre baner (f.eks. × 1, × 4, × 8 eller × 12), så længe det giver de jordforbindelser, der kræves af den større fysiske slot størrelse.
I begge tilfælde forhandler PCIe det højeste gensidigt understøttede antal baner. Mange grafikkort, bundkort og BIOS -versioner er verificeret til at understøtte × 1, × 4, × 8 og × 16 tilslutning på den samme forbindelse.
Bredden på et PCIe -stik er 8,8 mm, mens højden er 11,25 mm, og længden er variabel. Den faste sektion af konnektoren er 11,65 mm i længden og indeholder to rækker med 11 ben hver (22 ben totalt), mens længden af den anden sektion er variabel afhængigt af antallet af baner. Stifterne er anbragt med 1 mm mellemrum, og tykkelsen af kortet, der går ind i stikket, er 1,6 mm.
Dataoverførsel
PCIe sender alle kontrolmeddelelser, herunder afbrydelser, over de samme links, der bruges til data. Den serielle protokol kan aldrig blokeres, så latens er stadig sammenlignelig med konventionel PCI, som har dedikerede afbrydelseslinjer. Når der tages hensyn til problemet med IRQ -deling af pin -baserede afbrydelser, og det faktum, at meddelelsesignalerede afbrydelser (MSI) kan omgå en I/O APIC og leveres direkte til CPU'en, ender MSI -ydelsen med at blive væsentligt bedre.
Data, der overføres på flere-sporede links, er indflettet, hvilket betyder, at hver på hinanden følgende byte sendes ned ad successive baner. PCIe -specifikationen refererer til denne indfletning som datastribning . Mens kræver betydelige hardware kompleksitet til synkronisere (eller ret op ) de indkommende stribede data, kan striping reducere latenstiden af den betydeligt n th byte på et link. Selvom banerne ikke er tæt synkroniseret, er der en grænse for bane til bane-skævhed på 20/8/6 ns for 2,5/5/8 GT/s, så hardware-bufferne kan justere de stribede data igen. På grund af krav til polstring reducerer stripning ikke nødvendigvis latensen af små datapakker på et link.
Som med andre serielle transmissionsprotokoller med høj datahastighed er uret indlejret i signalet. På det fysiske niveau anvender PCI Express 2.0 8b/10b -kodningsskemaet (liniekode) for at sikre, at strenge med på hinanden følgende identiske cifre (nuller eller en) er begrænsede i længden. Denne kodning blev brugt til at forhindre modtageren i at miste styr på, hvor bitkanterne er. I dette kodningsskema erstattes hver otte (ukodede) nyttelastbit data med 10 (kodede) bits transmitteringsdata, hvilket forårsager en overhead på 20% i den elektriske båndbredde. For at forbedre den tilgængelige båndbredde bruger PCI Express version 3.0 i stedet 128b/130b -kodning (0,0154% overhead). Linjekodning begrænser kørelængden af enscifrede strenge i datastrømme og sikrer, at modtageren forbliver synkroniseret med senderen via urgendannelse .
En ønskelig balance (og derfor spektral densitet ) på 0 og 1 bit i datastrømmen opnås ved XORing af et kendt binært polynom som en " scrambler " til datastrømmen i en feedback -topologi. Fordi det krypterende polynom er kendt, kan dataene gendannes ved at anvende XOR en anden gang. Både scrambling og descrambling -trin udføres i hardware.
Datalinklag
Datalinklaget udfører tre vitale tjenester til PCIe express -linket:
- sekvensere transaktionslagspakkerne (TLP'er), der genereres af transaktionslaget,
- sikre pålidelig levering af TLP'er mellem to slutpunkter via en bekræftelsesprotokol ( ACK- og NAK -signalering), der eksplicit kræver afspilning af ikke -anerkendte/dårlige TLP'er,
- initialisere og administrere flowkontrolkreditter
På transmitteringssiden genererer datalinklaget et stigende sekvensnummer for hver udgående TLP. Det fungerer som et unikt identifikationsmærke for hver transmitteret TLP og indsættes i overskriften på den udgående TLP. En 32-bit cyklisk redundanskontrolkode (kendt i denne sammenhæng som Link CRC eller LCRC) er også vedhæftet slutningen af hver udgående TLP.
På modtagelsessiden er den modtagne TLP's LCRC og sekvensnummer begge valideret i linklaget. Hvis enten LCRC-kontrollen mislykkes (angiver en datafejl), eller sekvensnummeret er uden for rækkevidde (ikke-på hinanden følgende fra den sidste gyldige modtagne TLP), så er den dårlige TLP samt eventuelle TLP'er modtaget efter den dårlige TLP, betragtes som ugyldige og kasseres. Modtageren sender en negativ bekræftelsesmeddelelse (NAK) med sekvensnummeret for det ugyldige TLP og anmoder om genoverførsel af alle TLP'er frem for det sekvensnummer. Hvis den modtagne TLP passerer LCRC -kontrollen og har det korrekte sekvensnummer, behandles det som gyldigt. Linkmodtageren øger sekvensnummeret (som sporer det sidste modtagne gode TLP) og videresender det gyldige TLP til modtagerens transaktionslag. Der sendes en ACK-besked til fjernsenderen, hvilket angiver, at TLP'en blev modtaget (og i forlængelse heraf alle TLP'er med tidligere sekvensnumre.)
Hvis senderen modtager en NAK -besked, eller der ikke modtages nogen bekræftelse (NAK eller ACK), indtil en timeout -periode udløber, skal senderen genudsende alle TLP'er, der mangler en positiv bekræftelse (ACK). Med forbehold for en vedvarende funktionsfejl i enheden eller transmissionsmediet præsenterer linklaget en pålidelig forbindelse til transaktionslaget, da transmissionsprotokollen sikrer levering af TLP'er over et upålideligt medium.
Ud over at sende og modtage TLP'er genereret af transaktionslaget, genererer og forbruger datalinklaget også datalinklagspakker (DLLP'er). ACK- og NAK -signaler kommunikeres via DLLP'er, ligesom nogle strømstyringsmeddelelser og flowkontrolkreditoplysninger (på vegne af transaktionslaget).
I praksis er antallet af ikke-anerkendte TLP'er på flyet begrænset af to faktorer: størrelsen på senderens afspilningsbuffer (som skal gemme en kopi af alle transmitterede TLP'er, indtil fjernmodtageren ACK'er dem), og flowkontrollen kreditter udstedt af modtageren til en sender. PCI Express kræver, at alle modtagere udsteder et minimum antal kreditter, for at garantere et link giver mulighed for at sende PCIConfig TLP'er og besked -TLP'er.
Transaktionslag
PCI Express implementerer opdelte transaktioner (transaktioner med anmodning og svar adskilt af tid), så linket kan transportere anden trafik, mens målenheden indsamler data til svaret.
PCI Express bruger kreditbaseret flowkontrol. I denne ordning annoncerer en enhed et initial kreditbeløb for hver modtaget buffer i sit transaktionslag. Enheden i den modsatte ende af linket, når transaktioner sendes til denne enhed, tæller antallet af kreditter, hver TLP forbruger fra sin konto. Senderenheden må kun sende en TLP, når dette ikke får sit forbrugte kreditantal til at overstige kreditgrænsen. Når den modtagende enhed er færdig med at behandle TLP'en fra sin buffer, signalerer den en tilbagevenden af kreditter til den afsendende enhed, hvilket øger kreditgrænsen med det gendannede beløb. Kredittællerne er modulære tællere, og sammenligningen af forbrugte kreditter med kreditgrænse kræver modulær regning . Fordelen ved denne ordning (sammenlignet med andre metoder som f.eks. Ventetilstande eller håndtryksbaserede overførselsprotokoller) er, at kreditreturens latens ikke påvirker ydelsen, forudsat at kreditgrænsen ikke opstår. Denne antagelse opfyldes generelt, hvis hver enhed er designet med passende bufferstørrelser.
PCIe 1.x citeres ofte for at understøtte en datahastighed på 250 MB/s i hver retning pr. Bane. Dette tal er en beregning ud fra den fysiske signalhastighed (2,5 gigabaud ) divideret med kodningsomkostningerne (10 bit pr. Byte). Dette betyder, at et seksten bane (× 16) PCIe -kort derefter teoretisk ville være i stand til 16 × 250 MB/s = 4 GB/s i hver retning. Selvom dette er korrekt med hensyn til databyte, er mere meningsfulde beregninger baseret på den anvendelige datalasthastighed, som afhænger af trafikkens profil, som er en funktion af applikationen på højt niveau (software) og mellemliggende protokolniveauer.
Ligesom andre serielle sammenkoblingssystemer med høj datahastighed har PCIe en protokol og behandlingsomkostninger på grund af den ekstra overførsels robusthed (CRC og anerkendelser). Lange kontinuerlige ensrettede overførsler (som dem, der er typiske for højtydende lagerkontrollere) kan nærme sig> 95% af PCIe's rå (lane) datahastighed. Disse overførsler har også størst fordel af et øget antal baner (× 2, × 4 osv.) Men i mere typiske applikationer (f.eks. En USB- eller Ethernet -controller) karakteriseres trafikprofilen som korte datapakker med hyppige håndhævede kvitteringer. Denne type trafik reducerer effektiviteten af linket på grund af overhead fra pakkeopdeling og tvungne afbrydelser (enten i enhedens værtsgrænseflade eller pc'ens CPU). Da det er en protokol for enheder, der er tilsluttet det samme printkort , kræver det ikke den samme tolerance for transmissionsfejl som en protokol til kommunikation over længere afstande, og dette tab af effektivitet er derfor ikke særligt for PCIe.
Linkets effektivitet
Hvad angår ethvert "netværk som" kommunikationsforbindelser, forbruges noget af den "rå" båndbredde af protokoloverhead:
En PCIe 1.x -bane tilbyder f.eks. En datahastighed oven på det fysiske lag på 250 MB/s (simplex). Dette er ikke nyttelastbåndbredden, men den fysiske lagbåndbredde - en PCIe -bane skal bære yderligere oplysninger for fuld funktionalitet.
| Lag | PHY | Datalinklag | Transaktion | Datalinklag | PHY | ||
|---|---|---|---|---|---|---|---|
| Data | Start | Sekvens | Header | Nyttelast | ECRC | LCRC | Ende |
| Størrelse (Bytes) | 1 | 2 | 12 eller 16 | 0 til 4096 | 4 (valgfrit) | 4 | 1 |
Gen2 -omkostningerne er derefter 20, 24 eller 28 bytes pr. Transaktion.
| Lag | G3 PHY | Datalinklag | Transaktionslag | Datalinklag | ||
|---|---|---|---|---|---|---|
| Data | Start | Sekvens | Header | Nyttelast | ECRC | LCRC |
| Størrelse (Bytes) | 4 | 2 | 12 eller 16 | 0 til 4096 | 4 (valgfrit) | 4 |
Gen3 -omkostningerne er derefter 22, 26 eller 30 bytes pr. Transaktion.
For en nyttelast på 128 byte er 86% og 98% for en nyttelast på 1024 byte. Ved små adgange som f.eks. Registerindstillinger (4 bytes) falder effektiviteten så lavt som 16%.
Den maksimale nyttelaststørrelse (MPS) er indstillet på alle enheder baseret på det mindste maksimum på enhver enhed i kæden. Hvis en enhed har en MPS på 128 bytes, skal alle enheder i træet indstille deres MPS til 128 bytes. I dette tilfælde vil bussen have en maksimal effektivitet på 86% for skriver.
Ansøgninger
PCI Express fungerer i forbruger-, server- og industriapplikationer som en forbindelse på bundkortniveau (for at forbinde bundkortmonterede perifere enheder), en passiv backplane-forbindelse og som et udvidelseskortinterface til tilføjelseskort.
I stort set alle moderne (fra 2012) pc'er, fra forbruger-bærbare computere og desktops til virksomhedsdataservere, fungerer PCIe-bussen som den primære forbindelse på bundkortniveau, der forbinder værtsystemprocessoren med både integrerede perifere enheder (overflademonterede IC'er) og ekstraudstyr (udvidelseskort). I de fleste af disse systemer eksisterer PCIe-bussen sammen med en eller flere ældre PCI-busser for bagudkompatibilitet med den store del af ældre PCI-periferiudstyr.
Fra 2013 har PCI Express erstattet AGP som standardgrænseflade for grafikkort på nye systemer. Næsten alle modeller af grafikkort udgivet siden 2010 af AMD (ATI) og Nvidia bruger PCI Express. Nvidia bruger dataoverførsel med høj båndbredde fra PCIe til sin Scalable Link Interface (SLI) -teknologi, som tillader flere grafikkort med samme chipsæt og modelnummer at køre samtidigt, hvilket giver øget ydeevne. AMD har også udviklet et multi-GPU-system baseret på PCIe kaldet CrossFire . AMD, Nvidia og Intel har frigivet bundkortchipsæt, der understøtter op til fire PCIe × 16-slots, hvilket muliggør tri-GPU- og quad-GPU-kortkonfigurationer.
Eksterne GPU'er
Teoretisk set kunne ekstern PCIe give en notebook grafikkraften på et skrivebord ved at forbinde en notebook med et hvilket som helst PCIe -skrivebordskort (indesluttet i sit eget eksterne hus, med strømforsyning og køling); dette er muligt med et ExpressCard- eller Thunderbolt -interface. En ExpressCard -grænseflade giver bithastigheder på 5 Gbit/s (0,5 GB/s gennemstrømning), mens en Thunderbolt -grænseflade giver bithastigheder på op til 40 Gbit/s (5 GB/s gennemstrømning).
I 2006 udviklede Nvidia Quadro Plex ekstern PCIe -familie af GPU'er, der kan bruges til avancerede grafiske applikationer til det professionelle marked. Disse grafikkort kræver en PCI Express x8- eller x16-slot til kortet på værtsiden, som tilsluttes Plex via en VHDCI med otte PCIe-baner.
I 2008 annoncerede AMD ATI XGP -teknologien, baseret på et proprietært kabelsystem, der er kompatibelt med PCIe × 8 -signaloverførsler . Dette stik er tilgængeligt på Fujitsu Amilo og Acer Ferrari One notebooks. Fujitsu lancerede snart deres AMILO GraphicBooster -kabinet til XGP. Omkring 2010 lancerede Acer Dynavivid grafikdock til XGP.
I 2010 blev der indført eksterne kortnav, der kan oprette forbindelse til en bærbar eller stationær computer via en PCI ExpressCard -slot. Disse hubs kan acceptere grafikkort i fuld størrelse. Eksempler inkluderer MSI GUS, Village Instruments ViDock, Asus XG Station , Bplus PE4H V3.2 adapter, samt mere improviserede DIY -enheder. Sådanne løsninger er imidlertid begrænset af størrelsen (ofte kun × 1) og versionen af den tilgængelige PCIe -slot på en bærbar computer.
Intel Thunderbolt -grænsefladen har givet en ny mulighed for at oprette forbindelse til et PCIe -kort eksternt. Magma har frigivet ExpressBox 3T, som kan rumme op til tre PCIe -kort (to på × 8 og et på × 4). MSI frigav også Thunderbolt GUS II, et PCIe -chassis dedikeret til grafikkort. Andre produkter som Sonnet's Echo Express og mLogics mLink er Thunderbolt PCIe -chassis i en mindre formfaktor.
I 2017 blev der introduceret mere fuldt udstyrede eksterne korthubber, såsom Razer Core, som har en PCIe × 16-grænseflade i fuld længde.
Lagringsenheder
PCI Express-protokollen kan bruges som datagrænseflade til flash-hukommelsesenheder , f.eks. Hukommelseskort og solid-state-drev (SSD'er).
Den XQD kort er et hukommelseskort format udnytte PCI Express, som er udviklet af CompactFlash Association, med overførselshastigheder på op til 1GB / r.
Mange højtydende SSD'er i virksomhedsklasse er designet som PCI Express RAID-controller- kort. Inden NVMe blev standardiseret, brugte mange af disse kort proprietære grænseflader og brugerdefinerede drivere til at kommunikere med operativsystemet; de havde meget højere overførselshastigheder (over 1 GB/s) og IOPS (over en million I/O -operationer pr. sekund) sammenlignet med serielle ATA- eller SAS -drev. For eksempel udviklede OCZ og Marvell i 2011 en native PCI Express solid-state drive-controller til en PCI Express 3.0 × 16-slot med en maksimal kapacitet på 12 TB og en ydelse på op til 7,2 GB/s sekventielle overførsler og op til 2,52 mio. IOPS i tilfældige overførsler.
SATA Express var en grænseflade til tilslutning af SSD'er via SATA-kompatible porte, der eventuelt giver flere PCI Express-baner som en ren PCI Express-forbindelse til den tilsluttede lagerenhed. M.2 er en specifikation for internt monterede computer udvidelseskort og tilhørende stik, som også anvender flere PCI Express baner.
PCI Express -lagerenheder kan implementere både AHCI -logisk interface til bagudkompatibilitet og NVM Express -logisk interface til meget hurtigere I/O -operationer, der tilbydes ved at udnytte intern parallelisme, der tilbydes af sådanne enheder. Enterprise-klasse SSD'er kan også implementere SCSI over PCI Express .
Klynge sammenkobling
Visse datacenterapplikationer (f.eks. Store computerklynger ) kræver brug af fiberoptiske forbindelser på grund af afstandsbegrænsningerne i kobberkabler. Typisk er en net-orienterede standard som Ethernet eller Fibre Channel tilstrækkelig til disse anvendelser, men i nogle tilfælde overhead indført ved rutes protokoller er uønsket og et lavere niveau interconnect, såsom InfiniBand , RapidIO eller NUMAlink er nødvendig. Lokale busstandarder som PCIe og HyperTransport kan i princippet bruges til dette formål, men fra 2015 er løsninger kun tilgængelige fra nicheleverandører som Dolphin ICS .
Konkurrerende protokoller
Andre kommunikationsstandarder baseret på seriel arkitektur med høj båndbredde omfatter InfiniBand , RapidIO , HyperTransport , Intel QuickPath Interconnect og Mobile Industry Processor Interface (MIPI). Forskellene er baseret på afvejningerne mellem fleksibilitet og udvidelsesmulighed vs latens og overhead. For eksempel at gøre systemet hot-pluggable, som med Infiniband men ikke PCI Express, kræver, at softwaren sporer netværkstopologi ændringer.
Et andet eksempel er at gøre pakkerne kortere for at reducere latenstid (som det er påkrævet, hvis en bus skal fungere som en hukommelsesgrænseflade). Mindre pakker betyder, at pakkeoverskrifter forbruger en højere procentdel af pakken, hvilket reducerer den effektive båndbredde. Eksempler på busprotokoller designet til dette formål er RapidIO og HyperTransport.
PCI Express falder et sted i midten, målrettet efter design som en systemforbindelse ( lokal bus ) frem for en enhedsforbindelse eller routet netværksprotokol. Derudover begrænser dets designmål med softwaretransparens protokollen og øger dens latens noget.
Forsinkelser i PCIe 4.0-implementeringer førte til, at Gen-Z- konsortiet, CCIX- indsatsen og et åbent Coherent Accelerator Processor Interface (CAPI) alle blev annonceret inden udgangen af 2016.
Den 11. marts 2019 præsenterede Intel Compute Express Link (CXL) , en ny interconnect -bus, baseret på PCI Express 5.0 -infrastrukturen i fysisk lag. De første promotorer for CXL -specifikationen omfattede: Alibaba , Cisco , Dell EMC , Facebook , Google , HPE , Huawei , Intel og Microsoft .
Integratorliste
PCI-SIG Integrators List viser produkter fremstillet af PCI-SIG-medlemsvirksomheder, der har bestået overensstemmelsestest. Listen indeholder switches, broer, NIC'er, SSD'er osv.
Se også
Noter
Referencer
Yderligere læsning
- Budruk, Ravi; Anderson, Don; Shanley, Tom (2003), Winkles, Joseph 'Joe' (red.), PCI Express System Architecture , Mind share PC-systemarkitektur, Addison-Wesley, ISBN 978-0-321-15630-3, 1120 s.
- Solari, Edward; Congdon, Brad (2003), Komplet PCI Express -reference: Designimplikationer for hardware- og softwareudviklere , Intel, ISBN 978-0-9717861-9-6, 1056 s.
- Wilen, Adam; Schade, Justin P; Thornburg, Ron (april 2003), Introduktion til PCI Express: En hardware- og softwareudviklervejledning , Intel, ISBN 978-0-9702846-9-3, 325 s.
eksterne links
-
Medier relateret til PCIe på Wikimedia Commons