Cursa febrilă în domeniul creșterii productivității sistemelor de calcul nu numai că nu se estompează, ci, aparent, accelerează ritmul. Cu toate acestea, dacă performanțele procesoarelor din ultimul deceniu au crescut cu mai mult de un ordin de mărime, atunci lățimea de bandă a autobuzelor I / O este de doar câteva ori. Dar performanța integrală a unui sistem informatic este determinată de cea mai lentă componentă a acestuia. Astăzi, necesitatea de a îmbunătăți performanța sistemului I / O este dictată nu numai de capacitățile sporite ale procesorului și ale memoriei, ci și de apariția tehnologiilor de rețea gigabit.
Cip de pod
IBM PCI-X Bridge
Aplicarea în masă a PCI a început în sistemele bazate pe Pentium, dar a fost utilizată cu 486 de procesoare. Frecvența busului era de la 20 la 33 MHz, iar viteza maximă teoretică era de 132 sau 264 MB / s pentru 32 sau 64 de biți. In placile moderne pe frecventa magistralei PCI este definită ca jumătate din frecvența de intrare a procesorului, adică la o frecvență de 66 MHz la 33 MHz PCI va fi, la 75 MHz - .. 37,5 MHz. Acesta este primul bus din arhitectura IBM PC, care este independent de procesor și este utilizat pe alte platforme.
Busul standard PCI este capabil să suporte nu mai mult de 10 încărcări sau trei până la patru sloturi. Această restricție este depășită prin includerea mai multor anvelope în PC. Acest lucru este realizat folosind poduri în două moduri: magistrala este conectată la o altă magistrală PCI sau direct la magistrala de sistem. Cu toate acestea, de obicei, un server bazat pe PC nu are mai mult de două duzini de sloturi PCI.
Autoconfigurare dispozitivelor (alegerea cererilor de întrerupere, DMA canal) susținută de BIOS-ul placii de baza pe principiul plug and play ( „plug and play“). Standardul PCI pentru fiecare slot definește un spațiu de configurare de până la 256 de registre opt biți care nu sunt atribuite spațiului de memorie sau spațiului I / O. Accesul la acestea se efectuează la cicluri de autobuz speciale de configurare Citiți și configurare scrie, care sunt generate de către controlerul atunci când controlerul de bus procesor PCI acces la registrele sale dispuse în spațiul IO.
- Suport pentru dispozitive PCI cu comutare la cald - PCI Hot-Plug. Introducerea acestei funcții vă permite să adăugați (eliminați) plăcile PCI fără a închide calculatorul. Acest lucru este util în special pentru platformele server;
- sistem de gestionare a energiei pentru dispozitivele de pe magistrala PCI, care permite controlul consumului de energie al plăcilor externe PCI și al dispozitivelor integrate de pe placa de bază; mecanismul de control este adaptat standardului ACPI, care facilitează gestionarea alimentării dispozitivelor PCI de sistemul de operare;
- adăugarea și prelucrarea cerințelor pentru proiectarea placilor PCI.
PCI este un bus cu o arhitectură partajată cu alocare de memorie - adică memoria este partajată de procesor (gazdă) și de dispozitive. Abordarea comună are dezavantaje evidente, de exemplu, orice dispozitiv periferic poate monopoliza magistrala, astfel încât alte dispozitive să nu aibă acces la ea. În plus, un autobuz cu alocare de memorie face dificilă identificarea și izolarea sursei defecțiunii.
Cu o creștere a frecvenței de ceas de procesoare la 1 GHz la anvelopa lărgimii procesor - memorie în 64 de biți, pe de o parte, și în legătură cu creșterea lățimii de bandă de rețea de până la 1 Gbit / s și apariția dispozitivelor periferice de mare viteză bazate pe Ultra3 SCSI și Fibre Channel - cu altul, lățimea de bandă disponibilă pentru astăzi PCI nu este suficientă. Astfel, limita teoretică pentru un bus PCI pe 64 de biți, la 66 MHz, cea mai productivă posibile implementări ale standardului, este 533 Mb / s, mai mult decât atât, au cel mai mare autobuz de distribuție 33 MHz, pentru care o lățime de bandă maximă de 266 Mb / s.
PCI-X standard
Pe lângă creșterea frecvenței de ceas, îmbunătățirea performanțelor realizate folosind astfel de îmbunătățiri ca protocol interregister atribut tranzacții separate de suport în fază, optimizarea așteptați stări și funcționarea unui volum standard de blocuri de date.
În cazul unei magistrale PCI tradiționale, decodificarea semnalului recepționat pe partea receptoare are loc în același ciclu ca și trimiterea. Acest lucru impune cerințe foarte stricte asupra timpului de decodare: în cazul unei magistrale PCI cu o frecvență de 66 MHz, este de numai 3 ns. În conformitate cu noul protocol interregister, decodarea este efectuată pentru un ciclu separat. O astfel de soluție, pe de o parte, simplifică punerea în aplicare a autobuz la o frecvență de ceas mai mare, pentru că relaxa restricțiile privind timpul de decodare, iar pe de altă parte - doar crește ușor numărul total de cicluri pentru o tranzacție (în cazul în care, în cazul funcționării PCI de scriere este realizată în mod obișnuit pentru nouă cicluri, cu PCI-X va fi completat în zece).
O altă extensie de protocol este numărul de octeți de tranzacție. În protocolul PCI, podul în mod implicit citește un număr predefinit de rânduri (de obicei una sau două) din memoria cache. Deoarece podul nu are ocazia să știe câte date vor fi solicitate, acesta citește întotdeauna numărul de linii datorate tehnologiei. Situația este diferită de tehnologia PCI-X. Acolo, podul știe exact câte octeți de selectat, deoarece câmpul atribut conține contorul lor. Acest lucru permite schemele de gestionare a tampoanelor mai eficiente și utilizarea sporită a resurselor de autobuz și a altor sisteme. Un alt parametru suplimentar care descrie tranzacția este numărul său de secvență - identificatorul unic al inițiatorului tranzacției (și segmentul arhitecturii magistralei în care este localizat inițiatorul). Numărul secvenței tranzacției poate fi utilizat pentru a construi algoritmi avansați de gestionare a tamponului.
Protocolul PCI tradițional se axează pe tranzacțiile întârziate. Implementarea acestuia prevede că dispozitivul care a solicitat datele ar trebui să sune în mod constant sursa pentru a determina momentul în care cererea este finalizată și datele sunt gata în registru. Noul protocol elimină faza de votare, care suspendă în mod esențial autobuzul. Esența mecanismului de susținere a tranzacțiilor divizate este că dispozitivul de inițiere trimite doar un semnal de cerere către sursa de date, primind o recepție în răspuns. După aceste operații, comunicarea dintre dispozitive este terminată și registrul este eliberat pentru prelucrarea altor informații. Când datele sunt gata, sursa inițiază o nouă tranzacție și o trimite către dispozitivul solicitant.
Dispozitivele PCI adesea adaugă măsuri suplimentare în timpul executării tranzacțiilor, așa-numitele stări de așteptare. Aceasta se face pentru a suspenda operațiunile pe magistrala, dacă datele nu sunt încă pregătite. În unele cazuri, astfel de inserții de bare goale pot reduce în mod semnificativ lățimea de bandă a magistralei. Protocolul PCI-X nu oferă o stare de așteptare, cu excepția întârzierii inițializării dispozitivului de destinație. Când dispozitivul PCI-X, din anumite motive, nu este pregătit să continue tranzacția, acesta este deconectat de la magistrală, furnizându-l altor dispozitive. Acest lucru crește eficiența utilizării resurselor informatice.
Cu ajutorul protocolului PCI-X, adaptoarele și punțile pot întrerupe tranzacțiile numai la marginea naturală a pachetului de 128 de octeți. Defalcarea datelor în pachete mai lungi face posibilă optimizarea vitezei de operare atât cu memoria cache, cât și cu memoria principală și bus-ul procesorului.
În primul rând, cu creșterea vitezei busului comun, lungimea și numărul de dispozitive pe care le suportă inevitabil scade, pentru a asigura calitatea semnalului. Intrarea directă-ieșire, care permite transportarea dispozitivelor pe distanțe lungi, este aproape nelimitată extinsă în ceea ce privește numărul de dispozitive. Astfel, se potriveste perfect pentru tehnologiile de retea corporatiste, retelele de sisteme si clustere. În al doilea rând, atunci când unul dintre dispozitivele din autobuzul comun nu funcționează, acest lucru afectează de obicei pe toți ceilalți. În cazul I / O direct comutate, un dispozitiv eșuat poate fi izolat, astfel încât acesta să nu afecteze restul.
Opinia președintelui nu trebuie respinsă, deoarece mai mult de 940 de companii importante au devenit membre ale PCISIG. Interesant, ca PCI-X ia avânt, ea începe să atribuie rolul la care este, după toate probabilitățile, abia intenționat de la început. De exemplu, pe baza performanței și a ușurinței utilizării acestui autobuz, experții PCISIG consideră că poate înlocui cu ușurință AGP. Au existat chiar încercări de a convinge corporații ca Sun și Apple să înlocuiască portul AGP cu autobuzul PCI-X în stațiile lor de lucru. Amintiți-vă că PCI-X pe 64 de biți la 133 MHz are aproximativ aceeași lățime de bandă ca și AGP 4X. Fiind unul dintre argumentul principal specifică funcționarea simultană a mai multor adaptoare grafice din PCI-X de autobuz, spre deosebire de AGP. Cu toate acestea, nu este inutil să reamintim că licența pentru AGP este eliberată gratuit, ceea ce nu se poate spune despre PCI-X (prețul de 25 USD).