| Valamikor
a 80-as évek elején, talán 1981-ben született meg egy masina, melynek
nevét az utókor soha nem fogja elfeledni: IBM PC. Már ebben az
őskövületben is találhattunk kis fekete csatlakozókat, melyek az ún.
ISA buszok máig is fennmaradt példányainak első képviselői voltak. |
|
Valamikor a '80-as
évek elején, talán 1981-ben született meg egy masina, melynek nevét az
utókor soha nem fogja elfeledni: IBM PC. Már ebben az őskövületben is találhattunk
kis fekete csatlakozókat, melyek az ún. ISA buszok máig is fennmaradt példányainak
első képviselői voltak.
Mit is jelent maga
a 'busz', mint fogalom? Nem más, mint egy összeköttetés a központi egység
(CPU) és a perifériák között. Az első ISA buszok mai mércével mérve nevetséges,
alig pár száz KB/s-os adatátvitelt bonyolítottak. Később kialakult a mai
ISA buszok végleges, standard formája, a 16 bites ISA busz. Ez a maga 8
MHz-es frekvenciájával a gyakorlatban közel 5 MB/s-os csúcssebességre képes
(az elméleti maximum 8 MB/s, ez azonban a fellépő késleltetések miatt nem
érhető el). Ez a '80-as évek közepén még bőven megfelelt minden eszköznek,
azonban az idő múlásával szükségessé vált egy jóval nagyobb sebességű buszrendszer
kifejlesztése.
1991-ben kezdődött
a PCI specifikáció gyakorlati megvalósításának kidolgozása az Intel laboratóriumaiban.
Természetesen a vezető hardvergyártó cégek képviselőinek bevonásával folytak
a fejlesztések, melynek gyakorlati eredményét (a PCI ipari szabványt) alig
4 év leforgása alatt közel 170 cég licenszelte... Így vált a legnépszerűbb
PC-s buszrendszerré a PCI.
A PCI erényei
Az ISA 8 MHz-es órajelét
33 MHz-re emelve, a sávszélességet pedig 32 bitre növelve a PCI maximális
átviteli sebessége közel 132 MB/s lett. Ez a 3D grafikus kártyákat leszámítva
minden korszerű perifériát ki tud szolgálni. Ha azonban ez a közeli jövőben
mégis szűkössé válna, bármikor bevezetésre kerülhet a 'dupla PCI', a PCI
busz 66 MHz-es, 64 bites változata, mely elméletben 264 MB/s-os csúcssebességre
képes.
A PCI másik előnye,
hogy nem a jól bevált ISA buszrendszer leváltására tervezték, hanem annak
kiegészítésére, 'patchelésére'. Így a PCI minden további nélkül alkalmazható
bármely régebbi rendszerrel együtt. Külön chipkészlet, az ún. 'PCI bridge'
felelős a CPU és a PCI perifériák közötti forgalom bonyolításáért. Speciális
pufferrel rendelkezik, melynek segítségével a CPU a transzfer befejezése
előtt már más feladattal foglalkozhat: a puffer és a perifériák közötti
tényleges adatátvitelt a CPU helyett a PCI bridge vezérli! Erről az ötletes
megoldásról nevezik a PCI-t 'lokális busz'-nak, bár valójában csak egy
átmenet a valódi lokális busz (CPU+cache+memória) és a periféria buszok
(pl. ISA busz) között.
Továbbá a PCI buszon
megvalósítható az ún. 'bus mastering' is, mely az intelligens perifériák
működésének támogatását jelenti. Bus mastering tulajdonsággal rendelkező
perifériák képesek a PCI buszon keresztül egymással kommunikálni: működést
összehangolni, információt cserélni, akár nagy mennyiségű adatot is mozgatni.
S ami a lényeg: mindezt a CPU teljes kikerülésével! Jogos lehet azonban
a kérdés: ebbe az adatforgalomba hogyan tud a CPU 'beleszólni' ? Miképpen
tud az egymás közötti kommunikációba a 'külsős' CPU is bekapcsolódni? Nos,
erre a problémára a 'PCI concurrency' technika jelent megoldást, melynek
alkalmazásával a PCI bridge képes a CPU-periféria és a bus mastering periféria-periféria
adatforgalmat egymástól függetlenül bonyolítani.
E sok misztikus fogalom
után talán nem haszontalan egy példát felhozni :) Milyen perifériák használnak
bus mastering-et? Az egyik legegyszerűbb, könnyen vázolható példa a korszerű
PCI TV tuner kártyák kép megjelenítése. Az általam is használt miroVIDEO
PCTV az antennáról fogott (vagy egyéb bemeneti portról kapott) analóg jelet
a kártyára integrált BrookTree/848 chippel digitalizálja, és másodpercenként
25 képkockát küld át egyenesen a videokártyához (természetesen a CPU teljes
kikerülésével, a 'helyi' PCI buszon át). A megjelenítés módjától függően
az adatok mehetnek egyből a videomemóriába, vagy további feldolgozás céljából
előbb a videochiphez is. Gyors fejszámolás: egy PAL formátumú jel (768
x 576 pixel, 32 bit színmélység, 25 frame/s) folyamatos bus mastering átvitele
konstans 44 MB/s-ot használ a PCI 132 MB/s-os sávszélességéből... Tehát
még bőven marad a többi perifériának :)
Buszrendszerek összehasonlítása
| |
ISA |
ISA |
EISA |
VESA |
PCI |
| Sávszélesség |
8 bit |
16 bit |
32 bit |
32 bit |
32 bit |
| Buszsebesség |
5.33 MHz |
8.33 MHz |
8.33 MHz |
33 MHz |
33 MHz |
| Max.
átviteli sebesség |
5.33 MB/s |
8.33 MB/s |
33 MB/s |
132 MB/s |
132 MB/s |
Bus
mastering
támogatás |
Nincs |
Nincs |
Van |
Van |
Van |
| Adat
/ cím paritás |
Nincs |
Nincs |
Nincs |
Nincs |
Van |
| Kártya
ID (automatikus konfiguráció) |
Nincs |
Nincs |
Van |
Van |
Van |