Documente Academic
Documente Profesional
Documente Cultură
NIVELUL FIZIC
4.1. Microprocesorul
4.2. Întreruperile
Dac unitatea central (UC) a cerut unui circuit de I/O efectuarea unei
opera ii, aceasta anun sfâr itul opera iei printr-o întrerupere. De asemenea, un
dispozitiv care dore te s foloseasc resursele procesorului semnalizeaz acest
lucru c tre procesor printr-o cerere de întrerupere. O întrerupere implic în
majoritatea cazurilor o cerere de magistral .
Într-un sistem real, mai multe dispozitive pot cere simultan întreruperi. Este
deci necesar un sistem de gestionare a cererilor de întrerupere (apare aceea i
problem ca în cazul accesului la magistral , i anume care dintre dispozitivele ce au
emis cererea urmeaz s fie servit). O modalitate curent de solu ionare a cererilor
simultane de întrerupere este de a asigna niveluri de prioritate diferite pentru
diversele dispozitive i de a utiliza un circuit arbitru pentru gestionarea acestor cereri.
Structura unui calculator 175
4.3. Magistrala
Caracteristicile constructive ale unei magistrale sunt influen ate de cerin ele i
particularit ile func ionale ale procesorului pentru care a fost conceput . Acest fapt
vine în contradic ie cu ideea de sistem deschis, conform c reia mediul de
comunica ie între componentele unui sistem trebuie s fie independent de produc tor.
Firmele dominante în domeniul construc iei de calculatoare i-au dezvoltat propriile
standarde de magistral adaptate familiilor de procesoare pe care le produc.
Exemple. DEC – UniBus, Intel – MultiBus, IBM – PC Bus HP – GPIB etc.
Unele din aceste magistrale sunt deschise, în sensul c standardul este
accesibil i utilizabil liber de orice produc tor; altele au fost patentate i au
restric ii de utilizare, de exemplu magistrala MicroChannel (MCA) a firmei IBM,
folosit în construc ia calculatoarelor PS/2. Exist i standarde dezvoltate de
grupuri de produc tori cu interese apropiate. Astfel au ap rut standardele Camac,
FastBus, FutureBus, NuBus, Can etc.
În cazul acestor magistrale se pune problema asigur rii interoperabilit ii i
compatibilit ii între module realizate de diver i produc tori. Metoda de eliminare
a unor astfel de probleme este supunerea componentelor la teste de conforman .
Cele mai cunoscute foruri interna ionale de standardizare care au activitate în
domeniul magistralelor sunt IEEE, ANSI i IEC.
Câteva din cele mai cunoscute tipuri de magistrale sunt prezentate în tabelul 4.1.
Structura unui calculator 181
Tabelul 4.1
Tipuri de magistrale
În cadrul unui sistem de calcul pot s coexiste mai multe tipuri de standarde,
specializate pe transferul de date între anumite tipuri de componente de sistem.
Astfel, se poate utiliza o magistral de mare vitez pentru transferul între procesor
i memorie, o magistral cu acces multiplu (multimaster) pentru unele periferice de
mare vitez (disc, interfa video) i o magistral de mic vitez pentru perifericele
lente. În aplica iile de control se mai poate ad uga i o magistral de
instrumenta ie, adaptat pentru culegerea datelor de proces.
Pentru a satisface o gam larg de cerin e, s-au dezvoltat familii de
magistrale care cuprind mai multe variante ale unei magistrale de baz i sunt
compatibile între ele într-o oarecare m sur (interfe ele dezvoltate pentru aceste
variante necesit modific ri minore pentru compatibilizare).
În prezent exist mai multe astfel de familii de magistrale:
• magistrale dezvoltate pentru calculatoare DEC – UniBus, QBus i VAXBI;
• magistrale dezvoltate pentru procesoarele Intel – MultiBus I, MultiBus II
i extensii ale acestora;
• magistrale inspirate de structura seriei de procesoare Motorola –
magistralele VME;
• magistrale de instrumenta ie – familia GPIB (dezvoltat de Hewlett
Packard), IEEE488 i Camac.
182 ARHITECTURA SISTEMELOR DE CALCUL
T1 T2 T3
DATE DATE
TM TDS
MREQ TML
TMH
RD
TRL TRH
TDH
MREQ
RD
MSYN
DATE DATE
SSYN
a cum se arat în figura 4.6, specifica iile PLB accept implement rile în
care aceste trei faze pot solicita numai un singur ciclu de ceas PLB. Acest lucru se
întâmpl atunci când masterului solicitant îi este acordat imediat accesul la
magistrala slave i unitatea slave confirm adresa de-a lungul aceluia i ciclu. Dac
un master trimite o cerere care nu poate fi imediat trimis la magistrala slave, faza
de cerere poate dura unul sau mai multe cicluri.
Procesorul de magistral local de 128 de bi i a ap rut în mai 2007.
PLB ofer o interfa standard între nucleele procesorului i controlerele
integrate ale magistralei. Cu PLB, poate fi dezvoltat o bibliotec a nucleelor
procesorului i controlerelor magistralei pentru utilizare i aplicare în nucleu, sub
form de circuite integrate specifice (numite Core + ASIC) i modele system-on-a-
chip (SOC).
În plus, PLB este o magistral de mare performan on-chip care este folosit
în sistemele integrate Core + ASIC. PLB sprijin citirea i scrierea, transferuri de
date între dispozitivele master i slave care sunt dotate cu o interfa de magistral
PLB i sunt conectate prin semnale ale PLB.
Fiecare master PLB este anexat prin magistrale de adresare diferite,
magistrale de citire de date, magistrale de scriere de date i semnale de transfer.
Slave-urile PLB sunt ata ate la PLB prin magistrale de adrese puse în comun, dar
decuplate, magistrale de citire, magistrale de scriere, control al transferului i starea
semnalelor pentru fiecare magistral de date.
PLB este o magistral complet sincron . O singur surs de ceas prevede
timing-ul pentru toate semnalele de PLB. Toate unit ile master i slave care sunt
anexa i la PLB folosesc acest ceas ca surs .
PLB se diferen iaz prin urm toarele caracteristici de performan :
Structura unui calculator 189
BUS REQUEST
arbitru
1 2 3 4 5
BUS REQUEST 1
arbitru BUS REQUEST 2
1 2 3 4 5
BUS GRANT 1
BUS GRANT 2
1 2 m
BG 1
BR 1
BG 2
BR 2
arbitru
BG m
BR m
ACK
BUS
1 2 m
log2m linii
de interogare
confirmare
arbitru
ACK
BUS REQUEST
BUS
1 2 3 4 5
1 2 m
BUS
GRANT
ACK
BUS
REQUEST
BUS
UC M I/O
Magistral VME
ML ML ML
VSB BUS
UC UC UC MP
VME BUS
VMS BUS
Magistrala memoriei este utilizat pentru transferul informa iilor între CPU
i memoria principal – memoria RAM a sistemului. Aceast magistral este o
parte din magistrala procesorului sau, de cele mai multe ori, este implementat
separat cu un set special de cipuri care este responsabil de transferul informa iilor
între magistrala procesorului i memorie.
Sistemele cu frecven mare a pl cii de baz lucreaz la viteze care dep esc
uneori posibilit ile cipurilor DRAM standard. În astfel de sisteme este utilizat un set
de cipuri, controlerul memoriei, care realizeaz interfa a între magistrala rapid a
procesorului i memoria principal , mai lent (vezi figura 4.15). Acest set de cipuri
este în general acela i cu setul de cipuri responsabil cu gestionarea magistralei I/O.
Magistrala procesorului
Cipurile
controlerului
de memorie
Magistrala principal a
Magistrala principal a sistemului
sistemului Magistrala memoriei
RAM
Parallel ATA sunt transferurile de date mai rapide, abilitatea de a deconecta sau
instala echipamente în timp ce calculatorul este func ional (hot swapping), cabluri
mai sub iri care permit sistemului de r cire cu aer s func ioneze mai eficient i
opera ii mai sigure cu verific ri de integritate ale datelor mai riguroase.
Interfa a standard pentru controlerele SATA este AHCI (Advanced Host
Controller Interface), care permite s fie folosite specifica iile avansate ale SATA
cum ar fi hot plug sau NCQ (Native Command Queuing). Dac interfa a AHCI nu
este implementat pe placa de baz , controlerele SATA ruleaz într-un mod care
emuleaz interfa a IDE, dar în acest mod nu se pot beneficia de nici una din
caracteristicile SATA enumerate mai sus. Driver-ele native din sistemul de operare
Windows XP nu suport interfa a AHCI, în timp ce sistemul de operare Windows
Vista i versiunile curente din Mac OS ofer acest suport.
Valorile ratei de transfer a genera iilor interfe ei SATA sunt de 1,5 Gb/s i
3,0 Gb/s. Exist planuri de viitor pentru un standard de 6 Gb/s, care ar fi în
momentul de fa folositor în tandem cu multiplicatori de porturi, pentru a permite
mai multor discuri s fie conectate la un singur port SATA, împ ind l rgimea de
band a portului între respectivele discuri.
SATA este o arhitectur de tip punct-la-punct (point-to-point), iar
conexiunea între controler (H – host) i echipamentele de stocare (D – device,
maximum 8 porturi) este una direct (vezi figura 4.18).
În PC-urile actuale, controlerul SATA este de cele mai multe ori plasat pe
placa de baz sau instalat pe un slot PCI. Unele controlere SATA au mai multe
porturi SATA i pot fi astfel conectate la mai multe echipamente, acestea având un
identificator unic pe 64 de bi i. Exist , de asemenea, i porturi de expansiune (M)
care permit conectarea prin cabluri (C, lungime ≤ 2 m) a mai multor echipamente
(maximum 16) la un singur controler de port SATA.
Protocoalele de transmisie de mare vitez folosesc o codare de tip 8b/10b, iar
semnalul este trimis folosind algoritmul NRZ (Non Return to Zero), cu semnale de
voltaj mic, diferen iale (LVDS). În codarea de tip 8b/10b, semnalul de sincronizare
este inclus în secven a de date. Aceast tehnic este numit clock data recovery
(recuperarea ceasului cu ajutorul datelor), deoarece nu folose te un semnal de
sincronizare separat. În schimb, are nevoie de o tranzi ie de la 0 la 1 în irul de date
serial pentru a face sincronizarea.
Varianta extern la magistralei SATA se nume te eSATA (introdus în 2004).
Structura unui calculator 201
Fluxul de date de baz i rela iile dintre modulele USB sunt prezentate în
figura 4.25, iar comunica ia între calculator (host) i aparate (hub) se face pe baza
unui protocol descris în figura 4.26.
Controlul erorilor este realizat cu ajutorul unui cod redundant ciclic, CRC
(Cyclic Redundancy Code), care asigur transmisia corect a informa iei.
Mecanismul CRC asigur o rat de eroare a transmisiei de un bit eronat la 10
miliarde. Dup terminarea transferului de date, are loc confirmarea transmisiei
datelor i verificarea corectitudinii transmisiei lor (handshake).
Datorit modulelor soft plug’n’play, la conectarea fizic a unui periferic la
computer, acesta este autodetectat, iar datorit unor registre interne ale perifericului
(care furnizeaz sistemului de operare informa ia necesar ) sunt înc rcate exact
driver-ele necesare func ion rii acestuia, care poate fi i dezinstalat când se
hot te îndep rtarea perifericului respectiv din configura ie.
Dup instalarea driver-ului aferent, acesta face o cerere de alocare de band .
Banda se aloc în mod dinamic, în func ie de necesit ile fiec rui periferic.
Informa iile se transfer sincron sau asincron pe magistral , în format de pachete.
210 ARHITECTURA SISTEMELOR DE CALCUL
Fig. 4.34. Topologia de magistral partajat la PCI i topologia punct la punct la PCI Express.
Observa ie. În cazul PCI Express, fiecare dispozitiv are o cale direct i
exclusiv c tre switch. Switch-ul analizeaz datele în func ie de prioritatea aplica iilor.
rgimea mare de band reprezint o alt noutate adus de PCI Express. O
singur cale este capabil s transmit 250 MB/s în fiecare direc ie simultan (500
MB/s pentru ambele direc ii). PCI Express este alc tuit din dou c i, a adar, poate
transmite 500 Mb/s pentru o singura direc ie i 1000 MB/s pentru ambele direc ii.
PCI Express în variantele ×4, ×8, ×16 nu se fabric pentru calculatoarele desktop,
ci pentru servere, iar PCI Express ×16 este creat pentru a înlocui slotul VGA 8x.
218 ARHITECTURA SISTEMELOR DE CALCUL
Din punct de vedere al compatibilit ii, produc torii au gândit PCI Express
pentru a r mâne compatibil din punct de vedere software cu toate sistemele de
operare i programele actuale. Cu alte cuvinte, nu este nevoie de un update
software pentru a putea beneficia de avantajele aduse de PCI Express. Un alt lucru
important este c PCI Express r mâne compatibil cu pl cile PCI actuale nu ofer
suport simultan pentru AGP i PCI Express, din cauza constrângerilor. Deci,
adoptând o platform cu PCI Express, trebuie înlocuit vechea plac video.
În plus, PCI Express diminueaz consumul de energie când slotul nu este activ,
ofer suport pentru traficul în timp real, încorporeaz func iile hot plug i hot swap,
furnizeaz performan e scalabile i caracteristici avansate, QoS (Quality of Service).
Comparativ cu PCI, PCI Express are semnale de leg tur minime, iar ceasul
i adresarea informa iei sunt incluse în date. Figura 4.35 compar l rgimea de
band per pin la PCI, PCI-X, AGP8× i PCI Express.
Figura 4.39 este o sintez de tip roadmap i arat evolu ia în timp a vitezei
magistralelor, exprimat prin valoarea ratei de transfer (benzii), iar tabelul 4.2
prezint comparativ caracteristicile, parametrii i performan ele câtorva dintre cele
mai r spândite standarde de magistrale seriale din ultimii ani.
Tabelul 4.2
Compara ie între magistrale
rgime Vitez Lungime Putere/
Num r
de band de maxim tensiune
Nume de echipamente
efectiv transfer de cablu necesare
per canal
(Mb/s) (MB/s) (m) (W/V)
SAS 3.000 375 8 - 4
FireWire
3.144 393 100 15/12–25 63 (cu hub)
3200
Fiber Channel
4.000 400 12 - 126 (16.777.216 cu switch-uri)
cablu cupru
Fiber Channel
10.520 2.000 2–50.000 - 126 (16.777.216 cu switch-uri)
fibr optic
Infiniband
120.000 12.000 5 - 1 (punct-la-punct)
12× Quad-rate