3.8.2004 - Architektúry PCI zbernice
 I. Úvod
PCI vznikla v konštrukčných a vývojových dielniach spoločnosti
Intel ako univerzálna, procesorovo nezávislá, multifunkčná zbernica. V krátkej
dobe k sebe prilákala vynikajúcou marketingovou politikou spoločnosti Intel
mnoho ďalších výrobcov a tak v súčasnosti zahrňuje počet registrovaných členov
založeného konzorcia PCI-SIG viac ako 900 firiem. Hlavným mottom jeho vzniku
bola snaha pripraviť výkonnú a univerzálnu zbernicu, ktorá by bola oddelená
od FSB základnej dosky a tak umožňovala hladkú, frekvenčne nezávislú implementáciu
do výkonných PC systémov, ktoré Intel vo svojej dobe pripravoval a kde VL-Bus
a ISA (event. EISA) už boli za zenitom. Dnes je PCI najrozšírenejšia zbernica
pracovných staníc a serverov. Prvá PCI špecifikácia sa objavila v júni roku
1992. Skoro ihneď (30.4.1993) nasledovala prvá revízia (2.0), ktorá definovala
PCI konektor a PCI rozširovacie dosky.
Rozhodujúcou vo vývoji PCI sa stala ale až špecifikácia 2.1 (1.6.1995), ktorá
ako prvá komplexne definovala postavenie členov PCI Bus, pridala 66 MHz protokol
a upravila niektoré dielčie nedostatky. Dá sa povedať, že špecifikácia 2.1 je
obsahovo štandardom jednoduchých systémov aj v súčasnosti (aspoň s ohľadom na
množstvo 33 MHz a 32 bitových kariet), aj keď bola ešte upravená (intenzívnejšia
podpora 66 MHz protokolu a obmedzenie niektorých liniek) vo verzii 2.2 (uvedená
v roku 1998; iba štvorstránkový dokument inovácií, obe revízie sú si veľmi podobné)
a v súčasnosti stále platnej verzii 2.3. Verzia 2.3 už nepodporuje 5 voltové
PCI karty, oficiálna podpora je iba u kariet 3,3 voltových a kombinovaných kariet,
ktoré musia byť samozrejme vybavené oboma kľúčmi. Na základných doskách je oproti
tomu stále dovolená montáž univerzálnych PCI slotov s 3,3 aj 5 voltovými kľúčmi.
Z hľadiska prípadného výskumu a vývoja je teda zrejmé, že päťvoltové karty patria
rozhodne minulosti a ich vývoj sa nemôže vyplatiť.
Uplatnenie PCI nájdeme pokiaľ potrebujeme komunikovať medzi periferiami a PC
s najvyššími nárokmi na dátový tok (kde iné univerzálne zbernice a rozhrania
v túto chvíľu nestačia), požadujeme univerzalitu na operačnom systéme i okolitom
hardvéri, požadujeme, aby zariadenie bolo použiteľné na starších strojoch, rovnako
ako aby malo aspoň krátkodobú víziu využiteľnosti. To všetko môže PCI ponúknuť.
II. Dnešné zbernice
Pokiaľ ide o ich vymenovanie, zoznam by bol dosť dlhý: PCI,
PCI-X, PCI Express, Mini PCI, AGP, UPT, DIV, CNR, ACR, AMR, PIT, PXI, ISA …
a zrejme nie úplný. Posledné dve zbernice patria už nenávratne iba priemyselnej
praxy, z ktorých sa ale v prospech PCI, Mini PCI event. postupne vytrácajú.
Vlastnícko právne vzťahy a PCI
PCI je otvorená špecifikácia. To je pri pochopení jej využitia
klúčové. PCI-SIG má registrované ochranné známky loga všetkých svojich "produktov"
a vlastní copyright na uvedené špecifikácie. Vydal dokonce záväzný dokument
o ich využívaní, ktorý by mal slúžiť členom ako norma. Niektoré symboly (logá)
boli nahradené novými a doporučené delenie podľa typu špecifikácie. Viac zdroj
čislo 6. Pro vývojárov je PCI-SIG otvorené z hľadiska možnosti nákupu špecifikácie
za odpovedajúce ceny (obvykle okolo 100 - 150 USD), resp. registrácia ako člen
konzorcia za ročný príspevok 3000 USD
III. Popis architektúry v minulosti a súčasnosti
Pretože má PCI architektúra priamu súvislosť s architektúrou
moderných PC, musíme se najprv pozrieť, ako sa vývoj PCI zbernice (PCI bus)
odrážal v premenách celého hardware PC.
Obr.1
PCI & PC (obr.1): V pôvodných predstavách Intelu, ktoré sa roky realizovali
na všetkých základných doskách PC, bola PCI ozajstnou lokálnou systémovou zbernicou
(local bus) celého PC. Niet divu: zbernica, ktorá už v roku 1995 podporovala
66 MHz protokol pri volitelnej šírke prenosu 32/64 bitov, podporujúca PnP a
naviac procesorovo nezávislá, zrejme na nič iného ašpirovať ani nemohla. Vysoké
ciele, ktoré si Intel predsavzal, splnila PCI naozaj do bodky, ba čo viac, pripravila
živnú pôdu pre nebývalý rozkvet chipových sád.
Pôvodný model usporiadania PC s PCI kostrou bol teda založený na kooperácii
PCI s vlastnou systémovou zbernicou procesoru (FSB), kde oddelenie zaišťoval
PCI mostík, čo bol jednoduchý PCI-FSB radič. Napriek tomu pôvodné procesory
(z najznámejších: Intel Pentium, AMD K5 a Cyrix) okolo roku 1995 disponovali
podporou 66 MHz zbernice, bolo oddelenie FSB od PCI nutné z dôvodov jednak,
ktoré vyžadovala PCI architektúra (systémové oddelenie) a jednak konštruktéri
PCI prídavnej periférie (v počiatkoch bola sila skepsy aj čo sa týka 66 MHz
FSB na základných doskách). Chipová sada dostala úplne nový rozmer. Pôvodní
intelovský termín PCIset úplne naplnil svoj význam a pevne rozdelil chipovú
sadu obvodov do dvoch striktne definovaných častí: tzv. northbridge a southbridge,
ktoré niekoľko rokov (aj dnes) predstavujú základy architektúry PC.
Northbridge
(volne preložené "severný most") mal zaišťovať komunikáciu procesora
s periferiami, prístup do fyzickej pamäti a komunikáciu s grafickou kartou -
všeobecne teda so systémovo nejnáročnějšími prostriedkami a prostredníctvom
PCI bus so southbridge.
Southbridge
("južný most") bol prostredníctvom PCI previazaný s northbridge a
zaišťoval celú komunikáciu s perifériami, ktorá nebola previazaná s PCI. Prostredníctvom
PCI/ISA radiču tzv. super I/O (integrovaný nástupca pôvodných radičov floppy-FDC,
COM-UART, LPT-PIO, klávesnice-KBC atď.), BIOS, zvukový subsystém a samozrejme
ISA sloty, pretože tie boli v roku 1995 často osadzované. Southbridge ale obsahoval
aj rozhranie IDE, teda pre pripojenie HDD a iných ATAPI zariadení.
Z pohľadu PCI systému je celá záležitost významná, pretože umožňuje presne definovať,
ktorý z oboch obvodov chipovej sady je tzv. arbiter, alebo supermaster celej
PCI zbernice. Je ním northbridge, aj keď o southbridge by sa dalo tvrdiť niečo
podobné.
Obr.2
Chipová sada MVP3 (obr.2) od spoločnosti VIA Technologies nadviazala na predchádzajúcu
VPX, VP2 a VP3, modernizáciou prešiel northbridge, pretože sa práve do neho
najviac premietali neúprosné požiadavky na zrýchlenie FSB. Pre variant desktop
bola vyvinutá kombinácia VT82C598AT a southbridge VT82C586B. Northbridge podporoval
oddelené napájanie PCI, ktoré bolo pokrokovo založené na 3,3 voltové logike
s nevyhnutnou dodatočnou podporou 5 V logiky (PCI 2.1). Z hľadiska PCI je dálej
dôležitá plná podpora 32 bitového režimu v PCI 2.1 (33 MHz), 66 MHz protokol
bol vyhradený pre sekundárne PCI rozhranie (event. PCI-PCI mostík, jedno zariadenie),
ktoré se ale nerealizovalo, bolo použité iba na grafické rozhranie zbernice
AGP.
PCI architektúra obmedzuje počet master zariadení na zbernici, keď je počet
prekročený, je potrebné hľadať alternatívne riešenie typu PCI-PCI mostík a takto
vytvorené sekundárne PCI zbernice. Počet master PCI zariadení bol omedzený interným
radičom na päť (zrejme na žiadnych bežných motherboardoch tento počet nikdy
nebol nevyužitý). Obvod pracoval v niekoľkých režimoch podľa synchronizácie
medzi PCI/AGP/FSB. Pre FSB 75 a 83 MHz dokonca ponúkal pseudosynchrónny režim
PCI na 30, resp. 33 MHz vďaka deliteľovi 2,5x. Veľmi prepracovaný už bol systém
spolupráce PCI bus s pamäťou.
Obr.3
Chipová sada BX, presnejšie BX440, od Intelu vznikla o niečo skoršie ako MVP3
od VIA, ale koncepčne si zodpovedajú. Northbridge 82443BX opäť obsahoval primárny
32 bitový PCI bus interface s integrovaným arbitrom zbernice (supermaster),
zhodnú podporu 3,3 voltovej PCI logiky (2.1) s nezávislým napájaním a rovnako
ako v predchádzajúcom prípade podporoval päť zariadení master.
Obr.4
U výrobcov novších chipových sád sa northbridge-PCI-southbridge technológia
držala (a drží) napríklad u spoločnosti AMD (obr 3,4). Dôvodom je vysoká priepustnosť
PCI zbernice v prevedení 64 bitov - 66 MHz. Problémom je ale implementácia tohoto
rozhrania. Chipová sada AMD760 zložená z northbridge AMD761 a southbridge AMD766,
napriek tomu, že FSB pracoval v móde double-rate 2x133 MHz, bola stále prepojena
pôvodným 32 bitovým 33 MHz PCI bus (PCI 2.2), čo sa samozrejme na výkone periférie
muselo prejaviť negatívne. Plnú podporu 66 MHz a 64 bitovej PCI primary bus
mala až sada s northbridge AMD762, ale využilo ju až v prípade southbridge typu
AMD768 (chipová sada pre dvojprocesorové serverové systémy AMD-760MPX; AMD-760MP
je založená na southbridge AMD766), pôvodné spojenie so southbridge AMD766 obsahovalo
samozrejme starší 32 bitový 33 MHz PCI primary bus. Celá technológia AMD-760MPX
umožňuje zaradiť až deväť PCI master do systému, z toho maximálne 2 zariadenia
master 66 MHz šírky 64 bitov na northbridge, tj. iba dva sloty PCI 2.2 66 MHz
- 64 bitov, plus podľa potreby do siedmych 33 MHz 32 bitových PCI masterov na
southbridge. Bloková schéma obvodovej synchronizácie, PCI hierarchie a usporiadania
chipsetov AMD760 i AMD-760MPX (760MP) je na uvedených schémach.
Obr.5
Vývoj sa ale nezastavil a nové požiadavky sebavedomú koncepciu northbridge-PCI-southbridge
nabúrali (obr.5,6). Dôvodom bolo: na jednej strane silnejúca potreba väčšieho
počtu nezávislých PCI master zariadení na zbernici (zjednodušene: nedostatok
PCI slotov a oproti tomu existujúcí operační systém, ktorý podporoval viac prídavných
PCI kariet - Windows 2000) a ďálej predovšetkým stále priepastnejší rozdiel
medzi frekvenciami hodinového kmitočtu PCI bus a FSB, inými dátový slovami uzol
medzi southbridge a northbridge. Situáciua sa vyhrotila v rokoch 1999 a 2000,
kedy nejväčší výrobcovia chipových sád, konkrétne VIA, Intel a SiS, nezávisle
predstavili nové riešenia propojenia southbridge a northbridge. Pochopiteľne,
každý z výrobcov zvolil inú stratégiu podľa vlastnej vízie potreby priepustnosti
chipsetu základnej dosky a tak sa PCI prvý krát od svojho vzniku odsunula do
pozadia riadiacej zbernice moderného PC.
Obr.6
Intelovské sady tým zmenili nielen funkciu, ale aj názov. Northbridge tejto
novej koncepcie tzv. IHA (Intel HUB Architecture, alebo HUB-Link) bol nazvaný
MCH (GMCH, Graphics Memory Controler HUB) a southbridge oproti tomu ICH (I/O
Controler HUB). Oba obvody sú spojené IHA s priepustnosťou až 266 MBps. Najstaršou
chipovou sadou, založenou na tejto technológii je síce i810, populárnejšia však
bola chipová sada i815 (MCH: 82815, ICH: 82801 alebo ICH2: 82801BA). ICH2 podporuje
už šesť zariadení master PCI 2.2 na 33 MHz PCI bus, AGP už nie je viazaný (je
na MCH), preto je možnosť využitia PCI-PCI mostíka a realizovať 66 MHz PCI sloty.
Chipová sada obsahuje mnohé vylepšenia z hľadiska správy napájenia, ale napríklad
je aj výborne dokumentovaná (skoro 500 strán iba pre ICH2). ICH2 sa týka sérií
i810, i815, i850 a samozrejme i845 s výnimkou modifikácií i845E a G, ktoré obsahujú
už ICH4.
Ani to však nestačí a tak sa hľadali dalšie riešenia. Veľký podiel na tom má
rozvinutá technológia Hypertransport, ďálej veľmi hektická príprava zavedenia
64 bitových procesorov, konkrétne Xeon na strane Intelu a očakávaného Clew alebo
SledgeHammer u AMD, rovnako ako intenzívne prípravy na masový prechod na PCI-X
systémy. PCI-X špecifikácia prináša zaujímavý fenomén: zdvojenie počtu slotov
na segment zbernice (príklad: zatiaľ čo počet slotov PCI 2.2 66 MHz / 64 bitov
môže byť na segmente - teda rozhraní radiča - maximálne dva, v prípade PCI-X
66 MHz / 64 bitov naproti tomu štyri). Nástupca ICH2, ICH4, neobsahuje z hľadiska
PCI nič výnimočného. Pro serverové aplikácie ale Intel vyvinul chipové sady
s E7500. Sám ICH3-S tejto sady nemá z hľadiska PCI žiadny veľký alebo dokonca
prevratný význam (podporuje šesť PCI 2.2 slotov šírky 32 bitov), avšak ICH3
sa kombinuje s MCH typu M7500, ktorý obsahuje interface k P64H2 (82870P2), čo
je 16 bitový PCI HUB. A to je kvalitatívne celkom nový prvok v technológiách
Intel. Každý z PCI HUBov môže obsluhovať na segmente štyri sekundárne PCI bus
typu PCI 2.2 (33 MHz) alebo štyri PCI-X 1.0 (66 MHz, zdvojenie) v prvom prípade
v 32 bitovom v druhom 64 bitovom prevedení.
Obr.7
Zaujímavá je aritmetika daného usporiadania segmentu: jeden PCI HUB môže obsluhovať
na jednom z oboch segmentov štyri 33 MHz 32 bitové PCI (PCI 2.2), dve 66 MHz
32 bitové PCI (PCI 2.2), štyri 66 MHz samozrejme 64 bitové PCI-X alebo dve PCI-X
100 MHz a pre najnáročnějšie systémy jeden PCI-X 133 MHz typu. Budúce systémy
teda budú obsahovať (okrem 6 PCI slotov z ICH) obvykle osem PCI 2.2 slotov (obojstranne
zaplnený prvý PCI HUB; 33 MHz, 32 bitov; 2 segmenty po 4 slotoch), pre stredne
náročné systémy najčastejšie kombináciu štyroch 66 MHz PCI-X a dvoch 100 MHz
PCI-X slotov (druhý zaplnený PCI HUB) a dva PCI-X 133 MHz sloty pre extrémne
náročné aplikácie (priepustnosť nad 1 GBps). Chipová sada Intel E8870 môže dokonca
podporovať až štyri PCI HUBy P64H2, počet PCI slotov sa tak ešte zvyšuje. PCI
HUBy už podporujú HotPlug a špecifické APIC. Tým, ako je zrejmé, sa uzaviera
historická paralela a PCI se späť sťahuje do northbridge (obr.7).
Podobne spoločnosť SiS predstavila svoj pohľad na riešenie architektúrou MuTIOL,
ktorá priepustnosť medzi chipmi zvýšila až na 533 - 1,2 GBps. Parazitné javy
na základnej doske takéhoto vedenia vyriešila po svojom, oba bridge zaintegrovala
do jedného obvodu, čím pojem chipová sada skoro stratil zmysel. Prvý obvod tohoto
typu bol SiS635, popularitu si získal ale až SiS735. Obe sady umožňujú spravovať
až 6 PCI master zariadení, teda z hľadiska PCI, okrem vyššej integrácie, neprináša
vôbec nič nové. Analogický je SiS745. SiS ale túto koncepciu "two in one"
opustila a späť sa s neintegrovaným MuTIOL vrátila k osvedčenému modelu northbridge-southbridge,
pochopiteľne tu northbridge-MuTIOL-southbridge. Sady southbridge SiS961, 962,
963 se líšia iba rýchlosťou MuTIOL a podporou periférie, šesť master PCI zostává
štandardom. Ani VIA nezostala pozadu a svoj V-Link (maximálna priepustnosť 533
MBps, obvyklá 266 MBps) sa vyhúpla na výslnie predovšetkým dodávateľom chipových
sád pre procesory Athlon. Ani tu sa z hľadiska PCI nestala nejaká prevratná
zmena. Sama VIA ale hľadá alternatívne cesty najmä pre budúcnosť a tak predstavila
pre high top systémy systém HDIT, podporujúce rovnako serverové chipové sady
od Intel (E7500 a E8870) HDIT-PCI-X expandéry. Tie súčasne s AGP slotom ležia
na zbernici prepojené s northbridge, teda aj tu je badateľný návrat k pôvodnej
koncepcii.
nVidia vo svojich dvoch chipových sadách nVidia nForce a nForce2 využíva zbernice
Hypertransport (s maximálnou priepustnosťou 800 MBps). Pre northbridge prijala
označenie IGP/SPP (podľa toho či je alebo nie je integrované grafické jadro),
pro southbridge veľmi príznačne MCP (Media & Communication Processor). Hypertransport
má vlastný systém pripojenia PCI zbernice, ktorý bude plne ocenený až príchodom
64 bitových procesorov do reálnej praxe.
Obr.8
A ako to bude s PCI architektúrou vyzerať v budúcnosti ? S príchodom 64 bitových
procesorov prepukne éra 64 bitových PCI prídavných kariet a 32 bitové systémy
budú trpené iba na dožitie.
Zaujímavo vyzerajú schémy chipových sád pre oba AMD Hammery. Kombinácie hypertransport
a PCI-X tunel, v blízkej budúcnosti zjavne doplnia kombinované Express sloty
pre sériovo-paralelné rozhranie (obr.8).
Vedľa primárnej PCI zbernice a primárnych PCI slotov, môže byť na zbernici vytvorená
aj sekundárna PCI zbernica a hierarchicky až niekoľko nižších PCI zberníc s,
bohužiaľ, obmedzeným počtom PCI segmentov (tzv. pravidlo 4 + 1). K realizácii
sa používa PCI-PCI mostík. Táto technológia má vlastnú špecifikáciu, slúži tiež
k vývoju veľmi zajuímavých a lacných PCI kariet s integrovanými rozhraniami
(napr. FireWire) a 1-4 PCI sekundárnymi slotmi. Jedny z popredných výrobcov
PCI-PCI mostíkov pre tieto PCI karty sú už roky spoločnosti Intel a Texas Instruments.
V tomto smere je ale PCI-X koncepčne ďálej a umožňuje až 256 PCI-X nezávislých
PCI-X segmentov na jednom PCI-X HUBe.
IV. Záver
V tejto práci som sa pokúsil priniesť prehľa najdôležitejších
zmien v architektúre PCI zbernice za posledné roky.
Ťažko odhadnúť kam smeruje vývoj zberníc pre prídavné karty a jedno i viacúčelové
užívateľské prídavné zariadenia. Blízka budúcnosť zrejme bude v PC a serveroch
stále patriť PCI kartám a moderným kartám ACR alebo CNR. PCI zbernica ale isto
nepovedala posledné slovo, dôkazom sú špecifikácie PCI-X vo verzii 1.0 a revízii
2.0, ktorá ďaleko predstihuje možnosti dostupných prídavných zariadení s výnimkou
UltraSCSI-160 a ultrarychlých sieťových aplikací, kde tiež nájde svoje prvotné
uplatnenie. Pre PCI hovorí aj fakt, že zatiaľ udržuje až na výnimku spätnú kompatibilitu
so všetkými typmi starších PCI kariet, čo je veľmi úctihodné – hlavne prihliadnúc
na skutočnosť, akými zmenami svet hardware za posledných desať rokov prešiel.
Na druhej strane v réžii PCI-SIG bola ohlásená nová univerzálna point-to-point
sériová zbernica PCI Express (3GPIO, AWG), ktorá znásobí prenosové rýchlosti
a výrazne zjednoduší, zmenší a celkovo zefektívni hardware. Je oprávnené domnievať
sa, že budúcnosť PCI v tomto paralelnom prevedení nie je v horizonte roka či
dvoch až tak jednoznačná. PCI Express naviac ponúka mnoho vylepšení, na ktoré
súčasná paralelná koncepcia jednoducho nestačí: napríklad využitie switchov,
multilinkov (násobných kanálov pre najvyššie dátové toky), miniaturizáciu základných
dosiek, integráciu kariet do jedného typu (zmizne napríklad rozdiel medzi AGP
a PCI), priamu podporu SATA v chipové sade atď. Taktiež externé propojenie káblami
bude jednoduchšie. Koncepcia PCI Express vyšla z PCI, preto k jej pochopeniu
je potrebné poznať princípy softwarovej obsluhy zbernice a prítomných členov.
V. Použité zdroje
1. http://www.pcisig.com/
2. http://www.via.com/
3. http://www.intel.com/
4. http://www.amd.com/
5. http://www.sis.com/
6. http://www.adaptec.com/worldwide/product/markeditorial.html
7. http://support.intel.com/support/chipsets/PC1001.HTM
8. J.Stoddard, A.Goodrum: www.ednmag.com, EDN (August 30, 2001), 85
9. F.Franc: www.ednmag.com, EDN (January 6, 2000), 61
10. G.Lakkas, B.Duduman: www.ednmag.com, EDN (September 20, 2001
11. http://www.pcisig.com
12. http://www.pcisig.com/specifications/conventional_pci_23
13. http://www.pcisig.com/specifications/conventional_pci_30
14. http://www.bezstarosti.cz
15. dokument 3gio_marketing_brief.pdf dostupný na www.pcisig.com
späť |