Články a foto


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äť

Vidíme detaily

Náhodná fotografia

Tatry Portál - všetko o Vysokých Tatrách