PCI siin

Allikas: Vikipeedia
Kolm PCI siini
Tüüpiline 32-bitine, ainult 5V PCI siin
Üks 32-bitine PCI siin

PCI (lühend sõnadest Peripheral Component Interconnect, inglise keeles ’välisseadmeühendus’) on Intel Corporationi poolt välja töötatud lokaalsiini standard, mida kasutatakse enamiku kaasaegsete personaalarvutite juures kõrvuti uuema PCI Express ja vanema ISA laiendussiinistandardiga. PCI siin (nagu kõik teised arvutisiinid) tähendab elektriliste ühenduste kogumit, mille kaudu andmeid kandvad elektrisignaalid liiguvad ühest arvutisüsteemi osast teise.

PCI siini standardi määravad:

  • Füüsilised parameetrid (näiteks ühenduspesade tüübid)
  • Elektrilised parameetrid (näiteks pinge)
  • Loogiline mudel (näiteks tsüklite tüübid siinis)

Laiendussiinid võimaldavad arvutisse lisada laienduskaarte ning ühendada neid protsessori ja põhimäluga. Iga siin koosneb kahest osast: andmesiinist ja aadressisiinist, kuid need võivad olla ka kokku multipleksitud samadele füüsilistele ühendustele.

PCI on siin. Igal siinil on mitu pesa. Esialgne PCI lubas ühele siinile kuni 3 pesa, uuem standard lubab kuni 6 pesa. Rohkemate pesade vajadusel võib arvuti sees olla ka mitu PCI siini, igaühel kuni 6 pesa. Lisaks võib PCI siinil olla PCI sild, mille taga on uus PCI siin. Nii saab kokku palju siine teha, näiteks IBM-i suurtes serverites esineb sadu PCI siine (pesasid on seega veel rohkem). [1]

Ajalugu[muuda | redigeeri lähteteksti]

Vanasti kasutati PC-des ISA siini, selle kitsaks jäämisel VLB siini ning serverites EISA siini. Sun`idel olid SBus siinid, Macidel NuBus, IBM-il MCA, jne. Mõned neist olid 16-bitised, enamik 32-bitised.

1991. aasta kevadel lõpetas Intel PCI siini esimese versiooni väljatöötamise. Kuna VLB oli ajutine häkk ja disainitud 486 protsessorite jaoks, siis Pentium protsessorite jaoks oli vaja uut, kiiremat siini. Inseneride eesmärk oli töötada välja kulutasuv ja produktiivne lahendus, mis võimaldaks realiseerida protsessorite Pentium ja Pentium Pro võimet. Eriti rõhutati, et välja töötamine (areng) toimub nullist ja insenerid ei püüdnud juba olemasolevaid seadmeid modifitseerida. Lisaks sellele oli vaja võtta arvesse neid vigu, mida tegi VESA, kui projekteeris VLB siini (elektriline koormus ei võimaldanud ühendada rohkem kui 3 laienduskaarti). Samuti rakendada seadmete autokonfiguratsiooni arvutile Amiga (protokoll Autoconfig).

Aastal 1992 ilmus PCI siini esimene versioon ja Intel teatas, et siini standard on lahtine ning et nad loovad PCI Special Interest Group`i. Seega on igal huvitatud arendajal võimalus luua PCI seameid ilma litsentsi ostmata. PCI kujutab endast hübriidi ISA ja VLB siinist. Uus standard pakub seadmetele otsest juurdepääsu süsteemi mälule, aga kasutab silda, et luua ühendus esisiiniga ja seejärel protsessoriga. Sild on vajalik, et reguleerida PCI kiirust sõltumata protsessori kiirusest. Esimese versiooni taktsagedus oli 33 MHz, siini laius oli kas 32 või 64 bitti ning ta toetas 3,3V ja 5V seadmeid. PCI on kuni 10% kiirem kui VLB standard. Teoreetiliselt on siini ribalaius 133 Mbit/s, aga tegelikkuses umbes 80 Mbit/s. Kahjuks ei saavutanud see standard populaarsust enne Windows 95 turule ilmumist, sest mainitud operatsioonsüsteem toetas Plug and Play (PnP) tehnikat. Lühidalt tähendab see seda, et süsteem tunneb ise porti või pesasse ühendatud seadme või kaardi ära ning seadistab automaatselt kõik vajaliku. Ehk siis: tarvitseb riistvarakomponendid (näiteks graafika- või helikaart) ainult arvuti vabasse pessa panna ja ülejäänu toimub enam-vähem automaatselt. Uus komponent annab endast märku pärast arvuti käivitamist ning kooskõlastab arvuti sisehaldussüsteemis kõik vajaliku.

1993. aasta keskel lahkus Intel ühendusest VESA ja hakkas tegema aktiivseid samme PCI siini edendamiseks turul. Vastus Uneset spetsialistidele ja konkureerivatele ettevõtetele, kes rääkisid, et see siin on allpool igasugust arvestust (siini tunnusjooned olid sarnased näiteks Zorro III`ga, publitseeriti palju artikleid kus räägiti, et siinil on vale disain) oli PCI 2.0.[viide?]

Füüsiliselt paikneb PCI enamasti rööbiti varasema ISA süsteemisiiniga. Vahel esineb süsteemiplaadil ka kombineeritud ISA ja PCI siin võimaldades kasutada emba–kumba neist. Ta loob otsese juurdepääsu perifeeriaseadmetele pöördumaks esisiini poole, millega on ühendatud protsessor.

Aastal 1995 ilmus PCI versioon 2.1 (teise nimega "paralleelne PCI siin"). See tagab taktsageduse 66 MHz ja siini maksimaalne edastuskiirus on 533 Mbit/s (64-bitine versioon taktsagedusega 66 MHz). Lisaks toetab seda operatsioonsüsteem Windows 95 (Plug and Play tehnoloogia), mis võimaldas IBM PC kasutajatel mitte tunda end riivatud võrreldes teiste platvormidega. Versioon PCI 2.1 oli nii populaarne, et varsti kanti see üle teistele platvormidele protsessoritega Alpha, MIPS, PowerPC, SPARC, jne.

Aastal 1997, seoses arvutigraafika arenguga ja AGP siini väljatöötlemisega ei rahuldanud PCI siin enam kõiki vajadusi ja enam ei kasutatud seda videokaartide juures (nõuded olid ülepaisutatud). AGP siin suhtles otse operatiivmäluga, võimaldades sinna laadida 3D elemente ning neid sealt kiirelt kätte saada. Füüsiliselt on see PCI–st erinev ning omavahel neid kaarte vahetada ei saa. Läbi aja on AGP-st ilmunud suuremate sagedustega versioone, mis kannavad lisandina nimes kordajat, mis näitab, mitu korda suurem on kiirus algse AGP-ga võrreldes (X2 — 133 MHz, X4 — 266 MHz, X8 — 533 MHz).

PCI siini tehniline ülevaade[muuda | redigeeri lähteteksti]

PCI kaardid

Siini taktsagedus on 33 või 66 MHz, mis võimaldab arendada suurt läbilaskmevõimet. Maksimaalne läbilaskmevõime on:

  • 132 Mbit/s, kui siinilaius on 32 bitti ja taktsagedus on 33 MHz;
  • 264 Mbit/s, kui siinilaius on 32 bitti ja taktsagedus on 66 MHz;
  • 264 Mbit/s, kui siinilaius on 64 bitti ja taktsagedus on 33 MHz;
  • 528 Mbit/s, kui siinilaius on 64 bitti ja taktsagedus on 66 MHz.

Kui taktsagedus on 66 MHz, siis on vaja järgida, et kõik perifeeria seadmed töötaksid samal taktsagedusel.

Mälu aadressiruum on 32 või 64 bitti. I/O aadressiruum on 32 bitti. Konfiguratsiooniruum iga seadme kohta on 256 baiti.

PCI on 64-bitine siin, kuigi seda kasutatakse tihti ka 32-bitise siinina. See tähendab, et ühekorraga saab edastada kas 32 või 64 andmebitti. Toimub sünkroonne andmevahetus, siin on multipleksitud (aadress ja andmed edastatakse kasutades sama liini).

Pinge on kas 3,3V või 5V. Eksisteerivad ka universaalsed emaplaadid mis toetavad nii 3,3V kui ka 5V seadmeid.

Siini spetsifikatsioon võimaldab kombineerida kuni kaheksa funktsiooni ühel plaadil (video + heli, jne.).

PCI seadmel on 47 kontakti (49 masteringi puhul).

Toetab Plug and Play`d.

PCI siini eelised[muuda | redigeeri lähteteksti]

Siini väljatöötamisel kaasati tema arhitektuuri eesrindlikud tehnilised lahendused, mis võimaldasid suurendada läbilaskevõimet. PCI siin on esimene siin IBM PC arhitektuuris, mis ei ole seotud vaid selle arhitektuuriga. See ei sõltu enam protsessorist ja seda kasutatakse ka näiteks Macintosh arvutites.

PCI siinil on veel üks väga suur eelis kõrge kiirusega andmete edastuse juures – Burst Mode Transfer ehk valangrežiimis edastus. Vanemad siinid vajavad ühe andmeploki edastuseks esmalt aadressi ning seejärel andmeid. Järgmise ploki saatmiseks tuleb uuesti defineerida aadress ja saata andmed. Lisanduvad veel spetsiaalsed plokid igale tsüklile. Valangrežiimis saadetakse esmalt üks aadresside plokk ja seejärel kaks või rohkem andmete plokki. Selline moodus annab palju suuremad andmeedastuskiirused.[2]

PCI on väga odav, laialt levinud ja voolusäästlik siin.

PCI siin erineb teistest siinidest selle poolest, et komponendid asetsevad plaadi PCI adapterite vasakul pealispinnal. Sel põhjusel jagab äärmine PCI pesa tavaliselt maandumiskohta ISA pesaga (shared slot).

Niinimetatud sildadeülene protsessor (PCI Bridge) võib olla lülitatud mitmete PCI kanalite külge, andes võimaluse saata üheaegselt andmeid edasi sõltumatute PCI kanalite vahel.

PCI siini signaalid[muuda | redigeeri lähteteksti]

PCI on põhiliselt mõeldud suhtluseks, kus mälusse tuleb kirjutada või mälust lugeda palju andmesõnu järjest. Siini masteriks on kas protsessor või DMA kontroller ehk initsiaator. Adresseeritav seade on sihtkoht.

Sümbol - (miinus) signaali ees tähendab, et selle signaali tase on loogiline null, märgistus {XX:0} tähendab rühma signaale numbritega 0 kuni XX.

  • AD{31:0} – multipleksitud aadressisiin/andmesiin. Aadressi edastatakse signaaliga FRAME, järgnevas signaalis edastatakse andmeid.
  • FRAME# – initsiaatori poolt saadetav signaal, mis näitab ülekande kestust.
  • DEVSEL# – seadme vastus, mis näitab, et ta on andmevahetusesoovist aru saanud ja andmevahetuseks valmis.
  • IRDY# – initsiaatori valmisolek andmevahetuseks.
  • TRDY# – näitab, kas sihtkoht on valmis andmevahetuseks või mitte.
  • STOP# – tehingu lõpp (sihtkoha seadmete päring).
  • LOCK# – kasutatakse paigaldamisel, hooldusel ja PCI ressursside vabastamisel.
  • REQ# – PCI seamete siini haaramise päring.
  • GNT# – siini kasutamise luba.
  • PAR# – paarsuse üldine bitt liinidele AD{31:0} ja C/BE{3:0}.
  • ParityER# – signaal tähendab, et on paarsuse viga.
  • RST# – kõikide seadmete lähtestamine.
  • SERR# – süsteemi viga, aktiveeritakse ükskõik milliste PCI seadmetega ning selle tulemus on maskeerimata tehingu lõpp (NMI).
  • REQ#64 – 64-bitise vahetuse päring.
  • ASK#64 – 64-bitise vahetuse kinnitamine.
  • Clock# – sünkroniseerimise signaal siini taktsagedusel.
  • Test Clock# – TSTRES, TestDO, TestDI signaalide kohandamine liidese JTAG testimiseks (tavaliselt ei ole kasutusel).[3]
  • TSTMSLCT# – testrežiimile üleminek.
  • CLK# – 33 MHz või 66 MHz taktsignaal.

Sümbol # nimetuse lõpus näitab, et signaal on aktiivne madalapingelises olekus

PCI seadme konfigureerimine[muuda | redigeeri lähteteksti]

Kui seade on arvutiga ühendatud, siis talle omistatakse initsialiseerimise käigus aadress kasutades IDSEL# signaali (Input Device Select). Kuna PCI seadmete maksimaalne arv on 21, siis PCI konfigureerimise tarkvara skaneerib kõik 21 võimalikku asukohta selgitamaks välja, millised seadmed on reaalselt olemas. Iga seade võib küsida aadressi I/O aadressiruumis või mälu aadressiruumis ja see info kirjutatakse seadme registrisse. Kui seade vajab installeerimist, kirjutatakse installeerimise kood seadme ROM-i, seejärel PCI tarkvara loeb seda koodi, käivitab ja teeb vajaliku initsialiseeringu.[4]

Füüsilised mõõtmed[muuda | redigeeri lähteteksti]

Normaalsuuruses kaardid (full-size):[muuda | redigeeri lähteteksti]

Normaalsuuruses kaardi kõrgus on 107 mm ja sügavus on 312 mm, kuid paljudele kaasaegsetele arvutitele need ei sobi. Kohad, kuhu tuleb kruvid keerata, on ka standardiseeritud. Vaatamata sellele, et kaart võib ka väiksem olla, on kruvi suurus sama ning kõik kruvid peavad olema hoolikalt kruvitud.

Keskmise suurusega kaardid (half–length):[muuda | redigeeri lähteteksti]

Peaaegu kõikidele kaasaegsetele arvutitele sobib see standard.

  • Laius – 15,24 mm
  • Sügavus – 175,26 mm
  • Kõrgus – 106,68 mm
MiniPCI js MiniPCI Express kaardid

Poole kõrgusega kaardid (half-height):[muuda | redigeeri lähteteksti]

Need on ’madala profiili’ kaardid, kuhu sobivad seadmed järgmises vahemikus:

  • Kõrgus: 36,07 mm – 64,41 mm
  • Sügavus: 119,91 mm – 167,64 mm

Mini PCI:[muuda | redigeeri lähteteksti]

Sülearvutitest leiame ka PCI modifikatsiooni Mini PCI. Standardi järgi on Mini PCI kaardid umbes 1/4 võrra väiksemad normaalsuuruses kaartidest. Tavalise PCI siiniga varustatud riistvaras saab kasutada Mini PCI kaarte Mini PCI to PCI muundurite abil. Uuematel arvutitel on Mini PCI asendatud PCI Express Mini kaartidega.

PCI ja PCI Express siinid

Tulevik[muuda | redigeeri lähteteksti]

PCI siiniliidest asendatakse järk–järgult PCI Express, HyperTransport ja USB siiniliidestega. Kaasaegsetele emaplaatidele (ligikaudu aastast 2010) paigaldatakse ainult üks, harva kaks PCI pesa varasema 5–6 asemel.

Vaata ka[muuda | redigeeri lähteteksti]

Viited[muuda | redigeeri lähteteksti]

  1. Siinid
  2. Õpetus FPGA riistvaralise lahenduse realiseerimiseks PCI siinil
  3. PCI Local Bus Technical Summary, 4.10 JTAG/Boundary Scan Pins
  4. Sisend/Väljund