Documente Academic
Documente Profesional
Documente Cultură
Cap.5. Magistrale
5.1 Noţiuni generale
Transferul informaţiilor digitale, între subsistemele unui calculator, se
realizează în mod secvenţial, prin intermediul unor linii multiple de legătură, numite
magistrale (bus). Magistralele reprezintă căi electrice de transmitere a semnalelor
intre diferite elemente ale unui sistem de calcul.
Prin magistrală se înţelege un ansamblu de linii conductoare, grupate
funcţional, menite să conecteze două sau mai multe unităţi componente ale unui
sistem de calcul. Pe fiecare linie a unei magistrale se poate transfera, la un
moment dat, o singură valoare logică (asignată unui nivel de tensiune bine definit),
ce reprezintă o cantitate de informaţie de 1 bit. Dacă magistrala are n linii, atunci
pe magistrală se transferă n biţi de informaţie în paralel şi vom spune că
magistrala transferă cuvinte de informaţie de dimensiune n.
Anumite dispozitive conectate la magistrală sunt active şi pot iniţia un transfer, iar
altele sunt pasive şi aşteaptă cererile de transfer. Dispozitivele active se numesc
dispozitive master, iar cele pasive - dispozitive slave. Atunci când UCP solicită unui
controler de disc citirea sau scrierea unui bloc, UCP are rol de master, iar controlerul
are rol de slave. Controlerul de disc poate deveni master, de exemplu atunci când
solicită memoriei acceptarea cuvintelor citite de pe disc. Memoria nu poate deveni
master în nici o situaţie.
Pentru amplificarea semnalelor, dispozitivele master se conectează la magistrală
prin drivere de magistrală (bus driver). Similar, dispozitivele slave sunt conectate prin
receptoare de magistrală (bus receiver). Pentru dispozitivele care pot fi atât emiţătoare
cât şi receptoare, se utilizează circuite emiţătoare/receptoare de magistrală (bus
transceiver).
5.3. Clasificarea magistralelor
După modul de transfer al informaţiilor, magistralele pot fi:
- magistrale unidirecţionale, la care transferul de informaţii se efectuează pe
toate liniile într-un singur sens, de la o unitate emiţătoare către una sau mai multe
unităţi receptoare;
- magistrale bidirecţionale, la care transferul se poate efectua în ambele
sensuri, alternativ prin multiplexare în timp, la un moment dat transferându-se
informaţii într-un singur sens. Astfel, unităţile conectate la o magistrală
bidirecţională pot fi pe rând unităţi emiţătoare sau receptoare de semnale.
După tipul informaţiilor transferate, magistralele pot fi:
- magistrale primare, pe care au loc transferurile informaţiilor utile, ce se
doresc a fi transmise între subsistemele unui calculator. Acestea pot fi: magistrale
de instrucţiuni sau magistrale de date.
- magistrale secundare, pe care au loc transferurile de informaţii
suplimentare, necesare obţinerii informaţiilor primare. Acestea pot fi: magistrale de
adrese, magistrale de comenzi sau magistrale de stări, considerate în general
unidirecţionale.
Deoarece memoria sistemului este comună pentru programe şi date, cele
două tipuri de informaţii primare sunt transferate pe o aceeaşi magistrală
bidirecţională, numită generic magistrală de date.
Cele două magistrale, de comenzi şi de stări transferă informaţii în sensuri
opuse şi formează împreună o magistrală bidirecţională pe linii separate, numită
magistrală de control.
După rata de transfer şi implicit după numărul de unităţi conectate, putem
avea:
- magistrale locale, care sunt amplasate în apropierea unităţilor foarte rapide,
cum este,de exemplu procesorul. Aceste magistrale sunt caracterizate de o rată
mare de transfer şi un număr mic de unităţi ce pot fi conectate la ele. Ca exemple,
pot fi date: magistrala locală a procesorului, magistrala locală a memoriei;
- magistrale de extensie (magistrale I/O), care sunt magistrale accesibile
utilizatorului, fiind terminate cu conectoare de extensie, de unde şi numele
acestora.
Magistralele de extensie sunt amplasate mai departe de procesor şi sunt
caracterizate de o rată mai mică de transfer şi un număr relativ mare de unităţi ce
pot fi conectate la ele. Dimensiunea conectoarelor depinde de standardul
magistralei respective şi în ele pot fi implantate diverse cuploare I/O, ce permit
extensia funcţiilor sistemului de calcul.
După modul de control al transferului de informaţii, magistralele pot fi sincrone
sau asincrone.
- Magistrale sincrone. Toate operaţiile magistralelor sincrone sunt sincronizate
de un semnal de ceas şi orice transfer durează un număr întreg de perioade de ceas,
numite cicluri de magistrala.
In cazul acestor magistrale, dacă un transfer se termină înaintea unui număr întreg
de cicluri, următorul transfer poate începe numai după sfârşitul ciclului în curs de
desfăşurare. Această situaţie conduce la întârzieri inutile.
Dacă la o magistrală sunt conectate dispozitive cu viteze diferite (unele lente,
altele rapide), viteza de transfer trebuie aleasă după dispozitivul cel mai lent, cele
rapide fiind întârziate.
- Magistrale asincrone. O magistrală asincronă elimină dezavantajele
magistralelor sincrone. In locul semnalului de ceas se utilizează un protocol logic
între emiţător şi receptor (numit handshake). In cadrul acestui protocol are loc un
schimb de informaţii între unitatea master şi unitatea slave care permit corelarea şi
coordonarea transferului de date. Fiecare acţiune a celor doi participanţi la transfer
este condiţionată de o acţiune anterioară şi nu de un impuls de ceas.
Magistralele asincrone necesită mai multe linii de semnal şi o logică mai
complexă, fapt care ridică preţul. Pentru acest motiv, în ciuda avantajelor
prezentate de acestea, magistralele sincrone sunt mai des utilizate.
5.4. Arbitrajul de magistrală
La majoritatea sistemelor, există mai multe module care pot prelua controlul
asupra magistralei (care pot deveni module master). Pentru acest motiv, dacă apar
mai multe cereri simultane de magistrală, este necesar să existe un mecanism de
arbitrare prin care să se determine modulul care va deveni master. Modulul master
va putea apoi iniţia un transfer cu un alt modul, care va avea rolul de modul slave
pentru acest transfer.
Metodele de arbitrare pot fi clasificate ca fiind centralizate sau descentralizate
(distribuite).
5.4.1. Arbitrarea centralizată
In cazul arbitrării centralizate, alocarea magistralei este realizată de un dispozitiv
hardware numit arbitru de magistrală. Acest dispozitiv poate fi un modul separat sau
poate face parte din UCP.
In figura 5.1 se prezintă un exemplu simplu de arbitrare centralizată.
In cadrul acestei soluţii există o singură linie de cerere a magistralei, care poate fi
activată de unul sau mai multe dispozitive în orice moment. Arbitrul nu poate distinge
dacă există mai multe cereri simultane sau o singură cerere, ci numai dacă există
sau nu cereri la un moment dat.
Fig. 5.1
Dacă linia de cerere este activată, arbitrul activează linia de acordare a
magistralei, la care sunt conectate în serie toate dispozitivele. Dispozitivul cel mai
apropiat fizic de arbitru detectează semnalul de pe această linie şi, în cazul în care a
efectuat o cerere, preia controlul asupra magistralei. Dacă nu a efectuat o cerere,
transmite semnalul următorului dispozitiv, care procedează la fel, până când un
dispozitiv preia controlul asupra magistralei.
In această schemă de tip daisy chain, prioritatea dispozitivelor este dată de
distanţa la care se află faţă de arbitru. Dispozitivul cel mai apropiat de arbitru are
prioritatea maximă. Pentru a modifica aceste priorităţi implicite, magistralele pot avea
mai multe nivele de prioritate. In acest caz pentru fiecare prioritate există o linie de
cerere şi una de acordare a magistralei.
Unele circuite de arbitrare au o linie suplimentară de achitare, ce este activată de
dispozitivul care a preluat controlul asupra magistralei în urma unui semnal de
acordare a magistralei. Imediat după activarea acestei linii, semnalele de cerere şi de
acordare pot fi dezactivate. In consecinţă, în timpul utilizării magistralei, alte dispozitive
pot solicita magistrala. La terminarea transferului curent va fi deja selectat următorul
dispozitiv master, care poate începe transferul imediat după dezactivarea semnalului
de achitare
5.4.2. Arbitrarea descentralizată
In cazul arbitrării descentralizate, nu există un arbitru de magistrală. Fiecare
modul are o prioritate unică şi conţine o logică pentru controlul accesului la
magistrală care ţine cont de priorităţile celorlalte module. In cazul în care un anumit
modul solicită accesul la magistrală, acesta verifică mai întâi dacă există vreun modul
cu prioritate mai mare care, de asemenea solicită magistrala. In cazul
în care o asemenea cerere nu există iniţiază transferul. Dacă un modul cu
prioritate mai mare iniţiază o cerere în acelaşi ciclu de ceas, acesta menţine cererea
până magistrala este eliberată. In figura 5.2 este prezentată schema unei magistrale
cu control descentralizat.
Fig. 5.2
5.5. Parcarea magistralelor
Anumite dispozitive master ale unui sistem de I/E, ca unităţile centrale, sunt
active în marea majoritate a timpului, în timp ce altele sunt active în mod sporadic. Un
dispozitiv din prima categorie poate păstra controlul asupra magistralei chiar după
terminarea transferului curent, deoarece este probabil că va utiliza magistrala şi în
continuare. Procedura prin care magistrala nu este eliberată automat după terminarea
transferului curent, ci numai în cazul în care există o cerere de magistrală, se
numeşte parcarea magistralei.
Prin utilizarea acestei metode, nu este necesară executarea operaţiilor de
eliberare a magistralei şi de arbitrare pentru fiecare transfer. Executarea arbitrajului de
magistrală pentru fiecare ciclu de transfer este dezavantajoasă. Dacă se utilizează
parcarea magistralei orice alt modul care solicită accesul la magistrală începe cu o
cerere adresată dispozitivului master de a elibera magistrala.
5.6. Magistrale locale
Magistrala procesorului este calea de comunicaţie între UCP şi subsistemele
cu care acesta lucrează direct. Magistrala procesorului este utilizată, de exemplu,
pentru a transfera date între UCP şi magistrala principală a sistemului, sau între
UCP şi memoria externă rapidă (memoria cache). Deoarece de performanţele
acestei magistrale depind în mare măsură performanţele calculatorului această
magistrală lucrează la o viteză mult mai mare decât orice altă magistrală din
sistem.
Magistrala procesorului are în componenţa magistrala de date, magistrala de
adrese şi pe cea de control. De exemplu, magistrala procesorului unui sistem
Pentium are 64 linii de date, 32 linii de adresă şi un număr de linii de control
asociate.
Magistrala memoriei este utilizată la transferul informaţiei între UCP şi
memoria principală - memoria RAM a sistemului. Această magistrală este
implementată printr-un set de circuite dedicate şi este responsabilă cu transferul
informaţiilor între magistrala procesorului şi memorie. In componenţa magistralei
memoriei intră şi o magistrala de adrese utilizată pentru selecţia locaţiei de
memorie în care urmează să se efectueze o operaţie de citire/scriere.
Fig. 5.3
Dimensiunea magistralei de memorie este strâns legată de mărimea
memoriei pe care unitatea centrală o poate adresa direct. In figura 5.3 sunt
prezentate magistralele locale ale unui sistem de calcul.
5.7. Magistrala de extensie
Magistrala de extensie, numită şi magistrală l/O, permite unităţii centrale, să
comunice cu dispozitivele periferice. Magistrala l/O face posibilă, de asemenea,
adăugarea de noi dispozitive pentru a extinde posibilităţile de prelucrare ale
calculatorului. Pot fi introduse în conectorii de extensie componentele de bază,
cum ar fi controlerele de hard disc şi plăcile adaptoare video; de asemenea, se pot
introduce dispozitive mai specializate, cum ar fi plăci de sunet şi plăci de interfaţă
cu unităţi CD-ROM.
De-a lungul evoluţiei sistemelor de calcul s-au dezvoltat mai multe tipuri de
magistrale de I/O. Dintre acestea cele mai importante sunt:
- ISA;
- MCA;
- EISA;
- Magistrala locală;
- Magistrala VESA locală;
- Magistrala PCI;
- Magistrala PCMCIA.
Aceste magistrale se deosebesc în principal prin numărul de informaţii
transferate simultan şi prin viteza cu care se face acest transfer. Arhitectura
magistralei este realizată cu un set de circuite, care este conectat la magistrala
procesorului.
5.7.1 Magistrala ISA
Magistrala ISA (Industry Standard Architecture) este arhitectura de
magistrală introdusă odată cu primul IBM PC, în 1982 şi care a fost mai târziu
îmbunătăţită la modelul IBM PC/AT. Până nu de mult magistrala ISA stătea la
baza calculatorului personal modern şi era principala arhitectură folosită în marea
majoritate a sistemelor PC de pe piaţă. Longevitatea acestei magistrale se
datorează siguranţei, accesibilităţii şi compatibilităţii sale.
Există două versiuni de magistrale ISA, care se deosebesc prin numărul de
biţi de date ce pot fi transferaţi simultan pe magistrală. Versiunea mai veche este
magistrala pe 8 biţi. Versiunea mai nouă este magistrala pe 16 biţi. Ambele
versiuni de magistrală funcţionează la 8 MHz, având nevoie de două până la opt
perioade de ceas pentru transferul datelor.
Magistrala ISA pe 8 biţi a fost utilizată de primele calculatoare IBM PC.
Magistrala ISA pe 16 biţi a devenit necesară odată cu apariţia microprocesoarelor
IA80286 care erau pregătite să transfere simultan 16 biţi pe magistrala de I/E.
Conectorii acestei magistrale erau prevăzuţi cu două secţiuni de câte 8 biţi fiecare.
O placă veche,pe 8 biţi, se putea introduce în una dintre cele două secţiuni, în
timp ce plăcile din generaţia nouă ocupau ambele secţiuni.
5.7.2 Magistrala MCA
Apariţia procesoarelor pe 32 de biţi a făcut ca magistrala ISA să nu mai
corespundă puterii noii generaţii de procesoare. Microprocesoarele 386 transferă
32 de biţi de date simultan, iar magistrala ISA poate transfera doar maxim 16 biţi.
In loc să extindă din nou magistrala ISA, IBM a decis să construiască o nouă
magistrală; aşa a apărut magistrala MCA (Micro Channel Architecture). MCA este
complet diferită de magistrala ISA şi îi este superioară din toate punctele de
vedere.
Magistrala MCA nu este compatibilă cu vechea magistrală ISA, deci plăcile
proiectate pentru magistrala ISA nu funcţionează într-un sistem MCA. MCA
funcţionează asincron cu procesorul central CPU, deci există mai puţine probleme
de sincronizare între plăcile adaptoare, pe magistrală.
MCA admite controlul total al magistralei (bus-mastering). Prin
implementarea tehnologiei bus-mastering, s-au realizat îmbunătăţiri semnificative
ale performanţelor în comparaţie cu magistrala ISA.
Deoarece şi magistrala EISA utilizează tehnologia bus-mastering principiul
acestei metode va fi prezentat la descrierea magistralei EISA.
In implementarea MCA bus-mastering, orice dispozitiv poate cere accesul
exclusiv la magistrală cu scopul de a comunica cu alt dispozitiv conectat şi el la
magistrală. Această cerere se face prin intermediul unui dispozitiv numit Central
Arbitration Control Point (Punct central de arbitrare), pe scurt CACP. CACP
arbitrează competiţia pentru transferul pe magistrală, asigurând accesul tuturor
dispozitivelor la magistrală dar împiedicând, în acelaşi timp, monopolizarea
acesteia de singur dispozitiv.
Sistemul de arbitraj al magistralei are în structura sa 4 linii de prioritate, care
stabilesc 16 nivele de prioritate. Fiecărui dispozitiv master i se atribuie un nivel de
prioritate între 0 şi F, nivelul F fiind cel mai puţin prioritar. Dispozitivul cu nivelul de
prioritate F este numit master implicit. Atunci când nu există nici un alt master sau la
apariţia unei condiţii de excepţie, magistrala este acordată acestui dispozitiv.
Un dispozitiv conectat la magistrala Micro Channel care doreşte să utilizeze
magistrala trimite numărul de prioritate care i-a fost acordat pe cele 4 linii de prioritate:
fiecare dispozitiv sau placă de extensie controlează aceste semnale şi renunţă la
magistrală, dacă detectează existenţa unei cereri de prioritate mai mare. Procesorul
principal (UCP) are prioritatea cea mai mică (F) fiind master implicit.
5.7.3 Magistrala EISA
EISA sunt iniţialele pentru Extended Industry Standard Architecture. Acest
standard a fost anunţat în septembrie 1988. Standardul EISA a fost dezvoltat de
un consorţiu de firme condus de Compaq şi Intel. Scopul acestei acţiuni era extinderea
magistralei ISA, astfel încât să permită arhitecturi de 32 de biţi şi viteze de transfer
superioare, păstrând însă compatibilitatea cu plăcile de extensie existente şi cu
perifericele.
In comparaţie cu arhitectura de sistem ISA pe 16 biţi, EISA permite mai
multe extensii cu mai puţine conflicte intre plăcile adaptoare.
Pentru a mări viteza sistemului, EISA utilizează o tehnologie numită bus
mastering (controlul total al magistralei). In esenţă, un dispozitiv cu opţiunea de
control total al magistralei este un adaptor prevăzut cu un procesor, care poate
executa operaţii independent de UCP. Pentru a funcţiona corespunzător,
tehnologia bus-mastering se bazează pe un circuit de arbitrare EISA (EISA
arbitration unit), numit de obicei cip ISP (Integrated System Peripheral - sistem
periferic integrat). Un controler de disc în tehnologia bus-mastering schimbă un
volum de date mult mai mare cu o unitate rapidă de hard disc, în comparaţie cu un
controler obişnuit.
Unitatea ISP decide care dispozitiv primeşte controlul, printr-un sistem de
patru niveluri de prioritate. Ordinea dată de nivelurile de prioritate este
următoarea:
- Reîmprospătarea memoriei
- Transferuri DMA
- UCP
- Plăci bus-master
Dispozitivul adaptor cu bus-mastering semnalează unităţii ISP că doreşte să
preia controlul sistemului. In cel mai scurt timp posibil (după ce au fost satisfăcute
priorităţile mai mari), ISP predă controlul dispozitivului. Aceste dispozitive au
incluse la rândul lor circuite care le împiedică să păstreze controlul pe perioadele
de timp care sunt necesare operaţiilor cu prioritate mai mare, cum ar fi
împrospătarea memoriei.
5.7.4 Magistrala locală
Magistralele l/O prezentate până acum au în comun o rată de transfer relativ
scăzută. In timp ce rata de transfer magistralei procesorului a crescut, magistrala
l/O a cunoscut doar ajustări neimportante ale acestui parametru, în principal prin
creşterea numărului de căi paralele. Magistrala l/O a trebuit să lucreze la o rată de
transfer scăzută deoarece majoritatea adaptoarelor instalate funcţionau doar la
viteze mai mici.
Figura 5.4 prezintă schema bloc de principiu a magistralelor unui sistem de
calcul.
Dacă pentru majoritatea dispozitivelor periferice cum sunt tastatura,
imprimantele, scannere, etc. această rată de transfer este suficientă, au apărut
dispozitive pentru care era necesar transferul rapid al unor blocuri mari de date.
Această necesitate apare mai ales la următoarele subsisteme:
- Adaptoare grafice. Interfeţele grafice ale sistemelor de operare Windows, OS/2
şi Unix X-Windows necesită actualizarea rapidă a imaginii grafice pentru deplasarea,
redimensionarea şi actualizarea ferestrelor multiple. Acelaşi lucru este valabil pentru
imaginile video în mişcare. Procesorul trebuie să actualizeze şi să transfere blocuri
mari de date în cadrul memoriei video.
- Adaptoare pentru interfaţa SCSI. Interfaţa SCSI este utilizată mai ales pentru
memorii de masă, ca unităţi de disc fix, unităţi CD-ROM şi unităţi de bandă încasetată.
Creşterea vitezei de transfer cu aceste dispozitive influenţează semnificativ
performanţele globale ale sistemului.
Fig. 5.4
O soluţie evidentă a acestei probleme este mutarea unora dintre extensiile
l/O într-o zonă unde pot avea acces la vitezele sporite ale magistralei procesorului,
la fel ca şi cea de care beneficiază şi memoria imediată. Figura 5.5 descrie
această nouă dispunere.
Această dispunere a componentelor a devenit cunoscută sub denumirea de
magistrală locală (local bus), deoarece dispozitivele externe (plăci adaptoare) pot
accesa acea parte a magistralei care aparţinea până acum doar procesorului şi
anume, magistrala procesorului.
Fig. 5.5
Soluţiile local-bus nu înlocuiesc standardele anterioare, cum ar fi ISA şi
EISA, ci sunt proiectate pentru a le îmbunătăţi. Pentru acest motiv, un sistem
uzual este bazat pe standardele ISA sau EISA fiind în acelaşi timp dotat şi cu unul
sau mai mulţi conectori local-bus. Astfel, plăcile mai vechi rămân compatibile cu
sistemul, iar plăcile adaptoare de mare viteză beneficiază acum de conectorii
local-bus.
5.7.5 Magistrala locală VESA
La început, magistrala locală era folosit în principal pentru adaptoarele
grafice. Această magistrală a apărut în sistemele de vârf în care strangulările erau
evidente. Din nefericire, spre sfârşitul anului 1992, mai multe sisteme local-bus
erau în competiţie pe piaţă şi fiecare sistem era brevetat. Această lipsă a
standardizării a stânjenit acceptarea largă a soluţiei local-bus.
Pentru a depăşi această problemă, Video Electronics Standard Association
(VESA) a dezvoltat un standard de magistrală local-bus cunoscut sub numele de
VESA Local-Bus sau, mai simplu, VL-Bus. La fel ca în implementările anterioare,
sistemele VL-Bus oferă accesul direct la memoria sistemului, cu viteza
procesorului. Magistrala VL-Bus transferă 32 de biţi de date simultan şi deci
permite ca transferul datelor între UCP şi un subsistem compatibil video sau un
hard disc, să se facă pe lungimea integrală de 32 de biţi a cuvântului pe care
comunică microprocesorul 486.
Magistrala locală VESA nu a mai fost dezvoltată pentru a fi adaptată la
procesoarele Pentium astfel încât a rămas inevitabil legată de procesorul 486.
5.5.6 Magistrala PCI
La începutul anului 1992, Intel a iniţiat crearea unui grup de lucru care a fost
constituit în aceleaşi scopuri ca şi grupul VESA. Recunoscându-se necesitatea de
a se depăşi slăbiciunile magistralelor ISA şi EISA s-a format grupul de interes PCI
(PCI Special Interest Group).
PCI sunt iniţialele pentru Peripheral Component Interconnect bus.
Documentaţia magistralei PCI, lansată în iunie 1992 şi modificată în aprilie 1993, a
reproiectat structura unui sistem de calcul prin intercalarea unei alte magistrale
între CPU şi magistrala l/O existentă, Această magistrală se conecta la celelalte
magistrale ale sistemului prin intermediul unor circuite bridge (punţi). S-a preferat
ca în loc să se intre direct pe magistrala procesorului, cu problemele sale delicate
de sincronizare (aşa cum s-a făcut în cazul magistralelor VL-bus şi local bus), să
se pună la punct un nou tip de controler pentru a extinde magistrala, ca în figura
5.6.
Magistrala PCI este numită adesea mezzanine bus, deoarece ea adaugă un
alt nivel configuraţiei tradiţionale de magistrală. Sistemele care au inclus
magistrala PCI au apărut pe piaţă la mijlocul anului 1993 şi de atunci au devenit
cele mai sigure sisteme de vârf.
Fig. 5.6
Rata de transfer a magistralei PCI a crescut considerabil. Una dintre cauzele
acestui transfer real mai rapid este faptul că magistrala PCI lucrează în paralel cu
magistrala procesorului, fără să o înlocuiască. Unitatea CPU poate procesa date
în memoria imediată în timp ce magistrala PCI este ocupată cu transferarea
informaţiilor între alte elemente ale sistemului, fapt care constituie un avantaj
major al magistralei PCI.
Magistrala PCI admite transferuri în mod exploziv (burst). Un asemenea
transfer constă dintr-o singură fază de adrese urmată de mai multe faze de date.
Arbitrajul de magistrală trebuie executat o singură dată la începerea fazei de adrese. In
timpul fazei de adrese se transmite adresa de început a blocului de date şi tipul
tranzacţiei care urmează; citire sau scriere. Dispozitivul slave memorează adresa de
început într-un contor de adrese şi va incrementa adresa în fiecare fază de date.
La magistralele EISA şi Micro Channel, posibilitatea de a utiliza modul exploziv
este stabilită printr-o negociere între dispozitivul master şi cel slave. Dacă aceste
dispozitive nu permit transferuri în mod exploziv, blocul de date se va transmite
utilizând o serie de tranzacţii separate şi, în acest caz, este necesar arbitrajul de
magistrală pentru fiecare tranzacţie individuală. In aceste condiţii un alt dispozitiv
master poate obţine magistrala între două tranzacţii şi această situaţie poate limita în
mod sever rata de transfer.
CPU
Slot pentru Front side bus Sloturi pt.
placă grafică Chipset memorie
RAM
Magistrală
AGP sau Magistrala
PCI Expres memoriei
Northbridge
Magistrala
internă
Sloturi
PCI Controler
grafic on
board
Magistrala
Southbridge
Magistrala b
PCI
PCI
Cabluri şi
IDE
porturi
SATA
off board
USB
Magistrala LPC
Porturi seriale
ROM
Porturi paralele
(BIOS)
Floppy disk
Tastatura
Mouse
Fig. 5.7
In cazul magistralei PCI, cele mai multe transferuri se execută în mod exploziv,
dispozitivele fiind proiectate astfel încât să permită asemenea transferuri. Dacă un
dispozitiv slave poate efectua numai tranzacţii singulare, la încercarea dispozitivului
master de a executa o tranzacţie în mod exploziv, dispozitivul slave termină
tranzacţia după prima fază de date. Astfel dispozitivul master va fi obligat să solicite
din nou magistrala printr-un proces de arbitraj. In acest mod performanţele vor fi mai
reduse, dar tranzacţiile singulare se pot utiliza pentru dispozitivele care nu necesită
rate ridicate de transfer.
Dezvoltarea ulterioară a magistralei PCI a condus la apariţia magistralei PCI
X şi aceasta cu diverse variante.
Din cauza tendinţei de dezvoltare a funcţiilor grafice posibilităţile magistralei
PCI au fost repede depăşite, în special pentru motivul că aceasta a fost concepută
pentru a deservi mai multe dispozitive. Această situaţie a condus la dezvoltarea
unei magistrale dedicate pentru adaptoarele grafice numită Accelerated Graphic
Port , sau prescurtat AGP. Magistrala AGP a fost utilizat, în primul rând, pentru a
accelera grafica 3D.
Magistrala AGP a fost înlocuită între anii 2004 – 2007 de magistrala PCI
Express, care avea performanţe îmbunătăţite.
In figura 5.7 sunt prezentate toate magistralele care sunt implicate în
realizarea unui sistem de calcul actual.
Punţile care conectează diverse magistrale între ele au în acest caz denumiri
consacrate. Astfel puntea care conectează magistrala procesorului (FSB) cu
magistrala memoriei şi magistrala plăcii grafice se numeşte Northbridge. Placa
grafică şi magistrala corespunzătoare poate fi de tip AGP sau, mai nou, PCI
Expres. O a doua punte numită Southbridge, conectează magistrala de extensie
care acum este de tip PCI (mezanin) cu porturile rapide (IDE, SATA, USB) şi cu
magistrala perifericelor lente numită LPC.
Magistrala LPC (Low Pin Count) conectează unităţile periferice de viteză
redusă cum sunt tastatura mouse-ul, controlerul de floppy disk, porturile seriale şi
paralele (la care poate fi conectată, de exemplu, o imprimantă), la circuitul
Southbridge. La aceeaşi magistrală este conectată şi memoria ROM în care se
găseşte BIOS-ul (Basic Input/Output Sistem). Această magistrală a fost concepută
pentru a înlocui magistrala ISA şi are avantajul că necesită mai puţine căi pentru
comunicaţia cu perifericele, fapt important pentru plăcile de bază actuale care sunt
în general foarte aglomerate. Punţile Northbridge şi Southbridge sunt conectate
între ele prin magistrala internă şi împreună formează ceea ce se numeşte
chipset.
5.5.7 Magistrala PCMCIA
Din dorinţa de a oferi calculatoarelor laptop şi notebook aceeaşi calitate de a
fi extensibile pe care o au sistemele desktop (de birou), Personal Computer
Memory Card International Association (PCMCIA) a stabilit câteva standarde
pentru plăcile de extensie de dimensiuni reduse (credit-card-size) care se
potrivesc in conectorii mici ai calculatoarelor laptop şi notebook.
Standardele PCMCIA, care au fost elaborate de un consorţiu format din
peste 300 de producători (inclusiv IBM, Toshiba şi Apple), au fost considerate a fi
un progres major în domeniul calculatoarelor portabile, deoarece conectorii
PCMCIA pentru laptop şi notebook admit plăci de extensie de memorie, plăci
fax/modem, adaptoare SCSI, plăci de reţea locală (LAN) şi multe alte tipuri de
dispozitive. Ideea de bază a standardului PCMCIA a fost aceea de a da
posibilitatea ca toate dispozitivele periferice PCMCIA existente la producători să
poată fi utilizate de orice notebook.
Oferta de plăci PCMCIA cu 68 pini şi dimensiuni de 2,1 pe 3,4 inci este
enormă. Furnizorii au în vedere nu numai plăci de extensie a memoriei, hard
discuri mici şi modemuri fără fir (care sunt deja disponibile), dar şi conectori pentru
reţea LAN fără fir, plăci PCMCIA de sunet, controlere de CD-ROM, unităţi de
bandă şi o placă gazdă (host) pentru alte periferice. Dispozitivele PCMCIA
existente costă considerabil mai mult decât dispozitivele analoage din sistemele
desktop ISA.
PCMCIA are un singur dezavantaj: standardul a fost doar vag respectat de
producătorii de calculatoare şi dispozitive periferice. Înainte de a achiziţiona un
calculator compatibil PCMCIA, ar trebui să obţineţi de la producător o listă a
dispozitivelor cu care acesta poate funcţiona.
Dorind să rezolve aceste probleme de compatibilitate, PCMCIA a continuat
să stabilească noi standarde. In urma acestei activităţi au rezultat, de fapt, 4
standarde: PCMCIA tip I până la tip IV. Cu toate acestea, există încă probleme de
compatibilitate, mai ales datorită faptului că standardele PCMCIA sunt opţionale;
unii producători nu le aplică integral înainte de a declara un sistem ca fiind
compatibil PCMCIA. Standardele au făcut totuşi ca sistemele de calcul şi
perifericele PCMCIA să fie din ce în ce mai mult compatibile între ele.