ASC 4 Nivelul Fizic Subl

51
4. NIVELUL FIZIC La baza structurii ierarhice a oricărui calculator se află nivelul fizic. El constituie fundamentul calculatorului úi are ca suport circuitele úi porĠile logice. Deoarece porĠile utilizează numere binare, funcĠionarea calculatoarelor se bazează pe algebra booleană. FuncĠionarea circuitelor logice se conduce după principiul unui tranzistor care se comportă ca un întrerupător electronic foarte rapid. PorĠile logice sunt realizate în diferite tehnologii: tehnologie bipolarăúi tehnologie unipolară sau MOS (Metal Oxide Semiconductor). În cadrul tehnologiei bipolare se poate remarca familia TTL (Transistor-Transistor Logic) – foarte utilizată úi ECL (Emitter Coupled Logic) – folosită în aplicaĠii care necesită o mare rapiditate de execuĠ ie. PorĠile realizate în tehnologie MOS sunt de 10 ori mai lente decât cele în tehnologie TTL úi de 100 de ori mai lente decât cele din tehnologia ECL. În cadrul tehnologiei MOS se disting câteva familii clasice: PMOS, NMOS úi CMOS. Aúa cum s-a mai spus, funcĠ ionarea porĠilor logice se bazează pe algebra booleană. O funcĠ ie booleană este asociată uneia sau mai multor variabile úi furnizează un rezultat care depinde în mod unic de valorile variabilelor binare aplicate la intrare. Exemplu. O funcĠie f a unei variabile oarecare A poate fi definită ca fiind f(A) = 1 dacă A = 0 úi f(A) = 0 dacă A = 1. Aceasta este funcĠ ia NON. O funcĠ ie booleană de n variabile prezintă 2 n stări posibile. A descrie complet aceste stări sub forma unui tabel care conĠine 2 n linii înseamnă a construi tabela de adevăr a funcĠiei respective. Fiecare linie a acestui tabel indică valoarea funcĠ iei pentru configuraĠia binară de n variabile. Prin combinarea unor porĠi logice úi încapsularea lor într-un circuit sau capsulă au rezultat circuitele integrate logice. Ele sunt realizate cu diverse densităĠi de integrare (numărul de porĠi sau de tranzistoare interne pentru circuit sau pe milimetru pătrat). Există mai multe categorii de integrare: SSI (Small Scale Integration) – circuite cu integrare redusă (sub 64 porĠi/circuit); MSI (Medium Scale Integration) – circuite cu densitate medie de integrare (sub 1024 porĠi/circuit); LSI (Large Scale Integration) – circuite cu înaltă densitate de integrare (sub 65.000 porĠi/circuit); VLSI (Very Large Scale Integration) – circuite cu înaltă densitate de integrare (peste 65.000 porĠi/circuit); SVLSI (Super Very Large Scale Integration) – circuite cu foarte înaltă densitate de integrare (peste 500.000 porĠi/circuit).

Transcript of ASC 4 Nivelul Fizic Subl

Page 1: ASC 4 Nivelul Fizic Subl

4. NIVELUL FIZIC

La baza structurii ierarhice a oric rui calculator se afl nivelul fizic. Elconstituie fundamentul calculatorului i are ca suport circuitele i por ile logice.Deoarece por ile utilizeaz numere binare, func ionarea calculatoarelor se bazeazpe algebra boolean . Func ionarea circuitelor logice se conduce dup principiulunui tranzistor care se comport ca un întrerup tor electronic foarte rapid.

Por ile logice sunt realizate în diferite tehnologii: tehnologie bipolar itehnologie unipolar sau MOS (Metal Oxide Semiconductor). În cadrul tehnologieibipolare se poate remarca familia TTL (Transistor-Transistor Logic) – foarteutilizat – i ECL (Emitter Coupled Logic) – folosit în aplica ii care necesit omare rapiditate de execu ie.

Por ile realizate în tehnologie MOS sunt de 10 ori mai lente decât cele întehnologie TTL i de 100 de ori mai lente decât cele din tehnologia ECL. În cadrultehnologiei MOS se disting câteva familii clasice: PMOS, NMOS i CMOS. A acum s-a mai spus, func ionarea por ilor logice se bazeaz pe algebra boolean . Ofunc ie boolean este asociat uneia sau mai multor variabile i furnizeaz unrezultat care depinde în mod unic de valorile variabilelor binare aplicate la intrare.

Exemplu. O func ie f a unei variabile oarecare A poate fi definit ca fiindf(A) = 1 dac A = 0 i f(A) = 0 dac A = 1. Aceasta este func ia NON.

O func ie boolean de n variabile prezint 2n st ri posibile. A descriecomplet aceste st ri sub forma unui tabel care con ine 2n linii înseamn a construitabela de adev r a func iei respective. Fiecare linie a acestui tabel indic valoareafunc iei pentru configura ia binar de n variabile.

Prin combinarea unor por i logice i încapsularea lor într-un circuit saucapsul au rezultat circuitele integrate logice. Ele sunt realizate cu diverse densit ide integrare (num rul de por i sau de tranzistoare interne pentru circuit sau pemilimetru p trat). Exist mai multe categorii de integrare:

• SSI (Small Scale Integration) – circuite cu integrare redus (sub 64por i/circuit);

• MSI (Medium Scale Integration) – circuite cu densitate medie deintegrare (sub 1024 por i/circuit);

• LSI (Large Scale Integration) – circuite cu înalt densitate de integrare(sub 65.000 por i/circuit);

• VLSI (Very Large Scale Integration) – circuite cu înalt densitate deintegrare (peste 65.000 por i/circuit);

• SVLSI (Super Very Large Scale Integration) – circuite cu foarte înaltdensitate de integrare (peste 500.000 por i/circuit).

Page 2: ASC 4 Nivelul Fizic Subl

ARHITECTURA SISTEMELOR DE CALCUL172

Limita de integrare a ajuns la câteva milioane de tranzistoare pentru circuitelemodeste sau chiar la câteva zeci de milioane în cazul procesoarelor puternice.

Exemplu. Din cadrul tehnologiei SSI fac parte circuitele logice simple,dintre care cele mai cunoscute sunt cele din familia 74xx dezvoltate ini ial de TexasInstruments i distribuite ast zi de numero i fabrican i de circuite logice. Din cadrultehnologiei MSI fac parte circuitele logice combina ionale, dintre care se pot aminti:multiplexorul, demultiplexorul, comparatorul, registrele logice programabile.

Exist unele circuite logice cu memorie. Pentru un calculator, memoria esteun dispozitiv esen ial. Ea este utilizat pentru stocarea instruc iunilor i a datelorprogramului în curs de execu ie. Pentru a ob ine memorarea unui bit, este necesar

se utilizeze un dispozitiv care se substituie valorii pe care a înregistrat-o. Un astfelde circuit poate fi realizat simplu cu por i logice, de exemplu cu por i logice I-NU.

4.1. Microprocesorul

Microprocesorul reprezint inima unui sistem de calcul. Privit din punct devedere fizic, el este un circuit care prezint câteva zeci sau chiar sute de terminale.Semnalele de comunica ie asociate acestora îi permit microprocesorului s facschimb de informa ii cu mediul extern, în principal cu circuite de memorie sau cucircuite de intrare-ie ire. O analiz detaliat a acestor semnale determin diverselemoduri de func ionare logic i electric a procesorului i posibilit ile sale deinterfa . Exist trei categorii de semnalele electrice externe ale microprocesorului:

• de adres ;• de date;• de comand .Fiec rui tip de semnal îi sunt asociate linii de comunicare care formeaz o

magistral . De cele mai multe ori, în limbajul de specialitate se vor întâlni câtevano iuni specifice precum: magistrala de adrese, care reprezint totalitatea liniilor pecare circul adresele, magistrala de date, corespunz toare liniilor de date imagistrala de comenzi, specific liniilor de comenzi.

Fig. 4.1. Schema unui microprocesor tipic.

Alya
Highlight
Page 3: ASC 4 Nivelul Fizic Subl

Structura unui calculator 173

Pentru ob inerea unei instruc iuni a programului care este executat,microprocesorul începe prin plasarea adresei acestei instruc iuni pe magistrala deadrese. Se activeaz un semnal pe magistrala de comand pentru specificarea uneiac iuni de citire din memorie. Ca r spuns la aceast cerere, memoria plaseazinstruc iunea pe magistrala de date, trimite un semnal c tre microprocesor prin careacesta este aten ionat c opera iunea este terminat i activeaz un semnal specificde validare a magistralei de comenzi. În timp ce microprocesorul prime tesemnalul de validare de memorie, el cite te informa ia (instruc iunea) prezent pemagistrala de date i o plaseaz într-unul din registrele interne.

Exist doi parametri principali asocia i performan elor unui microprocesor:num rul de linii ale magistralei de adrese i num rul de linii ale magistralei de date.

Observa ie. Ambii parametri se refer la imea magistralelor i se m soarîn num r de linii (sau de bi i). A nu se confunda cu rgimea (de band ) amagistralelor, care se exprim în termenii vitezei de transfer (multipli deocte i/secund .)

Un microprocesor care are m linii de adres poate adresa pân la 2m cuvintede memorie. Valorile curente pentru m sunt: 16, 20, 24, 32 sau 64. De asemenea,dac dispune de n linii de date poate scrie/citi un cuvânt de memorie de n bi i într-osingur opera ie. Valorile curente pentru n sunt: 8, 16, 32 sau 64.

Exemplu. Un microprocesor care dispune de opt linii de adres necesitpatru opera ii de citire pentru citirea unui cuvânt de 32 de bi i. Dacmicroprocesorul ar avea 32 de linii de adres , citirea aceluia i cuvânt s-ar face într-un singur tact, de unde rezult c un procesor este cu atât mai rapid cu cât are maimare num rul de linii de date.

În afara liniilor de adres i de date, microprocesorul dispune de linii decomand . Acestea permit asigurarea sincroniz rii, regl rii i comand riischimburilor pe magistral între microprocesor i mediul extern.

Semnalele de întrerupere sunt semnale de intrare pentru un microprocesor.Ele provin în principal de la circuitele de intrare-ie ire.

Exemplu. Un microprocesor cere unui circuit de intrare-ie ire (de faptperifericului c ruia îi este asociat) s efectueze o anumit sarcin , dup care î icontinu activitatea. În acest timp, perifericul realizeaz opera ia cerut la viteza saproprie de execu ie. Dup ce sarcina este îndeplinit , perifericul previne circuitulde I/O (intrare-ie ire) care activeaz un semnal de întrerupere prin care i se ceremicroprocesorului o cerere de comunicare. O astfel de cerere de întrerupere poate fiactivat , de exemplu, la terminarea unei sarcini sau la apari ia unei erori. Urmeazapoi o secven de tratare a acestei cereri de întrerupere.

Semnalele care gestioneaz accesul la magistral servesc la fluidizareatraficului pe magistral prin evitarea unor bloc ri care pot rezulta din utilizareasimultan de c tre dou circuite a magistralei.

Unele procesoare au linii speciale de comunicare cu alte procesoare sau cuprocesorul secundar (coprocesorul), atunci când situa ia o cere. Acest lucru sepoate întâmpla, de exemplu, atunci când este nevoie de un calcul matematic, princedarea controlului coprocesorului matematic.

Page 4: ASC 4 Nivelul Fizic Subl

ARHITECTURA SISTEMELOR DE CALCUL174

4.2. Întreruperile

Întreruperile sunt schimburi în fluxul de control, care nu sunt cauzate deprogramul care se execut , ci de alte cauze, aflate de obicei în leg tur cu opera iile I/O.

Exemplu. Un program poate comanda discului s porneasc transferulinforma iei i îi cere acestuia s furnizeze o întrerupere imediat ce transferul s-aterminat. Microprocesorul întrerupe programul ce se execut i transfer controlulunei proceduri de tratare a întreruperii, care execut câteva ac iuni corespunz toare.Când se termin , rutina de tratare a întreruperilor întoarce controlul c treprogramul întrerupt. Microprocesorul trebuie s reporneasc procesul întreruptexact din aceea i stare în care era când a ap rut întreruperea, ceea ce înseamnrefacerea tuturor registrelor interne în starea de dinainte de întrerupere.

Un concept cheie al întreruperilor este transparen a. Când apare oîntrerupere, se execut câteva ac iuni i un fragment de cod anumit, dar cândservirea întreruperii s-a terminat, calculatorul trebuie s se întoarc în aceea i starepe care a avut-o înainte de întrerupere. O procedur de tratare a întreruperii cuaceast proprietate se spune c este transparent .

Dac un calculator are mai multe dispozitive de I/O care pot lucra în paralel,exist o probabilitate diferit de zero s apar simultan dou cereri de întreruperesau s apar o astfel de cerere atunci când se execut deja una. Pentru a se puteaface o departajare între toate aceste întreruperi, acestea vor avea ata at câte un nivelde prioritate. Când un dispozitiv cu prioritatea n genereaz o întrerupere, rutina detratare a întreruperii trebuie, de asemenea, s fie executat cu prioritatea n.

În timp ce se execut o procedur de tratare a întreruperii cu prioritatea n,orice încercare de a cauza o întrerupere de c tre un dispozitiv cu o prioritate maimic este ignorat pân când rutina întreruperii se termin i UCP se întoarce laprogramul utilizatorului. Pe de alt parte, tratarea întreruperilor de la un dispozitivcu o prioritate mai mare trebuie validat f nici o întârziere.

4.2.1. Gestionarea întreruperilor

Dac unitatea central (UC) a cerut unui circuit de I/O efectuarea uneiopera ii, aceasta anun sfâr itul opera iei printr-o întrerupere. De asemenea, undispozitiv care dore te s foloseasc resursele procesorului semnalizeaz acestlucru c tre procesor printr-o cerere de întrerupere. O întrerupere implic înmajoritatea cazurilor o cerere de magistral .

Într-un sistem real, mai multe dispozitive pot cere simultan întreruperi. Estedeci necesar un sistem de gestionare a cererilor de întrerupere (apare aceea iproblem ca în cazul accesului la magistral , i anume care dintre dispozitivele ce auemis cererea urmeaz s fie servit). O modalitate curent de solu ionare a cererilorsimultane de întrerupere este de a asigna niveluri de prioritate diferite pentrudiversele dispozitive i de a utiliza un circuit arbitru pentru gestionarea acestor cereri.

Alya
Highlight
Alya
Highlight
Page 5: ASC 4 Nivelul Fizic Subl

Structura unui calculator 175

Exemplu. Un astfel de circuit este Intel 8259A (controler de întreruperiutilizat în calculatoarele IBM PC/AT i PS/2).

INT IR 0 Ceas de sistem INTA IR 1 Tastatur RD IR 2 Controler IRQ2 WR IR 3 COM2/COM4 A0 IR 4 Mouse serial CS IR 5 Placa de sunet D0-D7 IR 6 Floppy disc IR 7 Imprimant

Fig. 4.2. Schema controlerului de întreruperi 8259A.

O cerere de întrerupere se traduce prin activarea intr rii asociateperifericului. Când una sau mai multe întreruperi ajung la controlerul deîntreruperi, acesta anun UC prin linia special INT (Interrupt), care este legat laintrarea de întrerupere a UC. Aceasta r spunde de obicei printr-un semnal devalidare a întreruperii (de exemplu, INTA = Interrupt Acknowledge). Ca urmare,controlerul de întreruperi informeaz UC pe magistrala de date despre dispozitivulcare a cerut întreruperea. Unitatea central utilizeaz acest num r pentru a ob inedintr-o tabel de pointer-i indexat adresa rutinei de întrerupere corespunz toare.

Controlerul de întreruperi con ine un num r de registre interne care pot ficitite sau scrise de c tre UC cu ajutorul semnalelor RD (Read), WR (Write), CS(Chip Select) i A0 (linia 0 de adres ). Toate aceste semnale, la fel ca INT i INTA,sunt active pe zero. Prin intermediul registrelor, UC comunic controlerului deîntreruperi disponibilitatea de a trata o nou cerere de întrerupere sau poateprograma controlerul s func ioneze într-un mod particular, de exemplu smascheze întreruperile pe o anumit intrare. Dac se dispune de mai multecontrolere de întrerupere, acestea se pot conecta în cascad . Rezult un avantaj:dac sunt necesare mai mult de opt linii de întrerupere, atunci se poate crea ostructur pe dou niveluri, care con ine un 8259A la ale c rui intr ri sunt legateie irile de întreruperi ale altor opt circuite 8259A. Se creeaz astfel posibilitateatrat rii a 64 de linii de întrerupere.

4.3. Magistrala

4.3.1. Conceptul de magistral

În modelul ma inii von Neumann, comunica ia dintre componentelesistemului se realizeaz prin leg turi dedicate între perechi de componente. Aceast

UC

8259A

controlerde

întreruperi

Alya
Highlight
Alya
Highlight
Page 6: ASC 4 Nivelul Fizic Subl

ARHITECTURA SISTEMELOR DE CALCUL176

abordare este relativ rigid , limitând drastic scalabilitatea (posibilitatea deextindere) a sistemului.

Ad ugarea de noi componente este dificil i implic modificarea celor dejaexistente. Proiectarea unei noi componente implic cunoa terea în detaliu afunc ion rii celorlalte elemente deja prezente. Solu ionarea acestei probleme avenit din partea firmei Digital Equipment Corporation (DEC), care la sfâr itulanilor '60 a lansat pe pia primul calculator (PDP 11), construit în jurul uneimagistrale – magistrala UniBus.

Conceptual, magistrala este un mediu comun de comunica ie întrecomponentele unui sistem de calcul; fizic este alc tuit dintr-un set de linii desemnal care faciliteaz transferul de date i realizeaz sincronizarea întrecomponentele sistemului.

Introducerea conceptului de magistral a revolu ionat modul de concepere iproiectare a noilor sisteme de calcul. Modelul de calculator bazat pe magistral afost preluat mai ales de familiile de calculatoare mini i micro. Prin standardizareamagistralelor, sistemele de calcul au devenit deschise, în sensul c un num r maimare de produc tori au avut posibilitatea s realizeze componente pentru o anumitstructur de calculator (module de memorie, interfe e I/O, echipamente periferice),bazându-se numai pe specifica iile magistralei.

În decursul timpului au fost dezvoltate diferite standarde de magistral , careau urm rit evolu ia procesoarelor (a unit ilor centrale) i a necesit ilor decomunica ie ale acestora (vitez , mod de transfer, necesit i de sincronizare icontrol etc.). S-au dezvoltat, de asemenea, magistrale specializate pentru anumitetipuri de echipamente periferice (SCSI i EIDE pentru unit i de disc, consolegrafice, interfe e de m sur i control). Din acest punct de vedere, în momentulactual se pot distinge dou clase de magistrale:

• magistrale de sistem – dezvoltate mai ales pentru conectarea unit iicentrale la celelalte componente de baz ale sistemului (de exemplu:MultiBus, ISA, EISA, PCI);

• magistrale specializate – care încearc s optimizeze transferul de datecu un anumit tip de echipamente periferice (VESA, AGP, SCSI, GPIB).

Apari ia i evolu ia ulterioar a microprocesoarelor a consacrat modelul decalculator bazat pe magistral . Configura ia semnalelor unui microprocesor esteastfel conceput încât s permit conectarea u oar la o magistral de sistem. Îngeneral, fiecare familie de microprocesoare (Intel 8086, Z80, MC 68000) a impus oanumit structur i un anumit standard de magistral . Exist îns anumitecaracteristici comune acestor magistrale (principii de transfer, tipuri de semnale),astfel încât modulele proiectate pentru un tip de magistral s poat fi, prinmodific ri minime, conectabile altor magistrale.

S-au introdus noi principii de transfer care compenseaz într-o oarecaresur limit rile de vitez impuse de legile fizicii de transmitere a semnalelor

electrice. Cele mai reprezentative dintre acestea sunt transferul concurent printranzac ii i prelucrarea pipe-line a cererilor de transfer.

Page 7: ASC 4 Nivelul Fizic Subl

Structura unui calculator 177

4.3.2. Elemente definitorii ale magistralei

O magistral se compune dintr-un set de semnale i un set de reguliconstituite într-un protocol, care guverneaz transferul de informa ii i accesul lamediul de comunica ie. Informa iile transferate pot fi: date, instruc iuni iinforma ii de control i sincronizare.

Protocolul se refer la:• caracteristicile mecanice: tip de conectori, num r de conectori aloca i pentru

un slot, formatul modulelor de extensie ata abile, sertar i fund de sertar(rack i cablajul din spatele acestuia – aceast structur fiind specificmagistralelor industriale);

• caracteristicile electrice ale componentelor conectate pe magistral : niveluride tensiune, curen i, înc rcare, frecven de lucru, rat de transfer;

• secven a de generare a semnalelor necesare pentru efectuarea unui transfer;• timpii limit pentru diferitele faze ale unui transfer i timpii de men inere a

unui anumit semnal;• intercondi ion rile func ionale i temporale între diferitele tipuri de semnale.

În accep iunea clasic , o magistral se compune din urm toarele tipuri desemnale.

Semnale de date – sunt semnale bidirec ionale utilizate pentru transferul dedate i instruc iuni. La un moment dat doar un singur dispozitiv poate s emit peliniile de date; num rul liniilor de date (8, 16, 32, 64) determin dimensiuneamaxim a cuvântului de date care poate fi transferat la un moment dat i, implicit,viteza medie de transfer a magistralei.

Semnale de adres – sunt utilizate pentru specificarea adresei modululuidestina ie sau surs de date, num rul de linii de adres determinând spa iul maximde adresare permis de magistral (de exemplu, 24 linii de adres determin unspa iu de adresare de 224 =16 Mloca ii).

Semnale de comand – sunt semnale unidirec ionale generate de CPU (saude c tre alt dispozitiv master), utilizate pentru specificarea direc iei de transfer (deexemplu, semnale de citire sau scriere pentru CPU) i a tipului de modul adresat(de memorie sau modul I/O, de memorie program, controler de întrerupere etc.).

Semnale de control – sunt semnale de utilizate pentru reglarea condi iilor detransfer al datelor (temporizarea deschiderii i închiderii amplificatoarelor demagistral pentru semnalele vehiculate pe aceasta).

Semnale de întrerupere – sunt generate de un controler dedicat, permitsemnalizarea unor evenimente interne sau externe i implicit determinîntreruperea execu iei programului curent.

Semnale de tact (de ceas) – sunt generate de un oscilator cu cuar , fiindfolosite pentru sincronizare i pentru generarea unor semnale de frecvenprogramabil .

Linii de alimentare – sun generate de sursa de tensiune a sistemului, fiindfolosite pentru alimentarea modulelor sistemului.

Alya
Highlight
Alya
Highlight
Alya
Highlight
Alya
Highlight
Alya
Highlight
Alya
Highlight
Alya
Highlight
Alya
Highlight
Page 8: ASC 4 Nivelul Fizic Subl

ARHITECTURA SISTEMELOR DE CALCUL178

Semnale de control al accesului – sunt utilizate pentru arbitrajul icontrolul accesului pe magistral (în cazul magistralelor multimaster), fiindgenerate de un circuit specializat (arbitru de magistral ).

Num rul i semnifica ia particular a semnalelor depind de tipul i destina iamagistralei. Anumite grupe de semnale din cele prezentate pot s lipseasc (deexemplu, semnalele de control) sau altele noi pot fi ad ugate (semnalele de eroare,semnalele de control al l imii datelor transferate pe 8 sau pe 16 bi i etc.).

Magistralele pot fi clasificate în func ie de mai multe criterii.I. modul de lucru (în raport cu semnalul de tact):• magistrale sincrone – la care ciclurile de transfer sunt direct corelate cu

semnalul de tact. Viteza de transfer este mai mare, îns rata de transfer amagistralei este limitat de frecven a tactului. Datorit vitezei limitate depropagare a semnalului electric, cre terea ratei ar duce la diferen e defaz la capetele magistralei.

• magistrale asincrone – la care nu exist o leg tur direct între evolu iaîn timp a unui ciclu de transfer i tactul sistemului. Majoritateamagistralelor actuale lucreaz pe acest principiu (de exemplu, ISA,EISA, MultiBus etc.).

II. num rul de module master conectate pe magistral :• magistrale unimaster – exist un singur modul master pe magistral .

Nu necesit mecanisme de arbitraj al magistralei (un modul master poateini ia un ciclu de transfer, pe când un modul slave poate fi comandat întimpul unui ciclu de transfer, neavând elementele necesare pentru aprelua controlul magistralei).

• magistrale multimaster – permit conectarea mai multor module masterpe acela i tronson de magistral . Magistrala trebuie s con in semnalede arbitraj i un protocol de transfer al controlului pe magistral (deexemplu, MultiBus, VME).

III. modul de realizare al transferului de date:• magistrale cu transfer prin cicluri (magistrale secven iale) – regula

de baz : ciclurile de transfer se desf oar secven ial, la un moment datcel mult un ciclu de transfer fiind în curs de desf urare. Majoritateamagistralelor folosesc acest principiu de transfer. În func ie de direc iade transfer se disting ase cicluri semnificative:¡ cicluri de citire (respectiv scriere) din/în memorie;¡ cicluri de citire (respectiv scriere) de la/la un port intrare-ie ire;¡ cicluri de acces direct la memorie (citire/scriere);

• magistrale tranzac ionale – transferul de date se efectueaz printranzac ii. O tranzac ie este divizat în mai multe faze. Mai multetranzac ii se pot desf ura simultan, cu condi ia ca tranzac iile s fie înfaze diferite; aceast restric ie provine din faptul c fiecare faz a uneitranzac ii folose te un subset din mul imea semnalelor magistralei.Teoretic, la aceste magistrale factorul de cre tere a vitezei (în compara ie

Alya
Highlight
Alya
Highlight
Alya
Highlight
Alya
Highlight
Alya
Highlight
Alya
Highlight
Alya
Highlight
Alya
Highlight
Alya
Highlight
Page 9: ASC 4 Nivelul Fizic Subl

Structura unui calculator 179

cu o magistral secven ial ) este egal cu num rul de faze în care sedivide o tranzac ie (de exemplu, magistrala procesoarelor post-Pentium).

IV. num rul semnalelor utilizate în transferul de date:• magistrale seriale – se utilizeaz ca mijloc de comunica ie între

componentele de baz ale unui calculator (CPU, memorie, interfe e deI/O etc.). Se folosesc, de asemenea, în anumite sisteme dedicate bazatepe microcontrolere, la care costul i dimensiunea redus sunt parametridefinitorii. Cu toate c viteza de lucru este mai mic decât lamagistralele paralele, în ultimul timp sunt tot mai utilizate (de exemplu,magistralele USB, SATA, SAS, PCIExpress etc.).

• magistrale paralele – sunt folosite datorit vitezei de lucru ridicate,transferurile de date realizându-se la nivel de octet i nu de bit.

4.3.3. Tipuri, familii i standarde de magistral

Tipurile uzuale de magistrale sunt:I. Magistrale procesor-memorie:• între procesor i memorie;• specializate;• scurte;• rapide.II. Magistrale I/O:• pot avea multe dispozitive I/O conectate (direct sau prin canale I/O

supervizate de procesoare specializate);• universale;• lungi;• mai lente decât magistralele procesor-memorie;• nu sunt legate direct la memorie, ci prin magistrale procesor-memorie

ori magistrale de fundal (backplane)III. Magistrale backplane (originar folosite la placa de baz ):• permit acces simultan la procesor, memorie, dispozitive I/O;• sunt reutilizabile (bune pentru diverse configura ii);

Magistralele I/O necesit o interfa simpl , pe când cele backplanenecesit o logic suplimentar la interfa . În schimb, avantajul magistralelorbackplane este c acestea con in singure toate conexiunile. Se pot crea conexiunicomplexe, ca în figura 4.3 (în cazul folosirii unor tipuri multiple de magistrale,trebuie utilizate adaptoare de magistrale pentru interconectare). Figura 4.3 con ineconfigura ii cu magistrale pentru comunicarea procesor-memorie i trafic I/O:

(a) o singur magistral backplane: folosit la PC-urile vechi;(b) o magistral procesor-memorie de tip PCI (bus backplane), care are

conexiuni SCSI cu magistrale I/O: folosit la PC-urile noi;(c) ca la (b), plus o magistral separat pentru traficul procesor-memorie:

folosit la sistemele multiprocesor SiliconGraphics.

Alya
Highlight
Alya
Highlight
Alya
Highlight
Page 10: ASC 4 Nivelul Fizic Subl

ARHITECTURA SISTEMELOR DE CALCUL180

Fig. 4.3. Configura ii cu magistrale pentru comunicarea procesor-memorie i trafic I/O:a. doar magistrala backplane; b. magistrala de tip procesor-memorie + magistrale I/O; c. toate tipurile.

Caracteristicile constructive ale unei magistrale sunt influen ate de cerin ele iparticularit ile func ionale ale procesorului pentru care a fost conceput . Acest faptvine în contradic ie cu ideea de sistem deschis, conform c reia mediul decomunica ie între componentele unui sistem trebuie s fie independent de produc tor.Firmele dominante în domeniul construc iei de calculatoare i-au dezvoltat propriilestandarde 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 aurestric ii de utilizare, de exemplu magistrala MicroChannel (MCA) a firmei IBM,folosit în construc ia calculatoarelor PS/2. Exist i standarde dezvoltate degrupuri 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 icompatibilit ii între module realizate de diver i produc tori. Metoda de eliminarea unor astfel de probleme este supunerea componentelor la teste de conforman .Cele mai cunoscute foruri interna ionale de standardizare care au activitate îndomeniul magistralelor sunt IEEE, ANSI i IEC.

Câteva din cele mai cunoscute tipuri de magistrale sunt prezentate în tabelul 4.1.

Page 11: ASC 4 Nivelul Fizic Subl

Structura unui calculator 181

Tabelul 4.1Tipuri de magistrale

StandardIEEE

Numeuzual

Domeniide utilizare

488 GPIB Instrumente de laborator

583, 596, 683 Camac Achizi ie de date i instrumenta ie

696 S 100 Microsisteme de dimensiune medie

796, P1296 MultiBus I, II Microsisteme de dimensiune medie

P896 FutureBus Sisteme multiprocesor

P996 PC Bus Calculatoare personale

P1014 VME Bus Sisteme microprocesor performante(cu Motorola 68000)

P1196 NuBus Sisteme multiprocesor

– UniBus Minicalculatoare PDP 11

– QBus Minicalculatoare VAX

– SCSI Periferice (HD, band , CD-ROM)

Î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 procesori memorie, o magistral cu acces multiplu (multimaster) pentru unele periferice de

mare vitez (disc, interfa video) i o magistral de mic vitez pentru perifericelelente. În aplica iile de control se mai poate ad uga i o magistral deinstrumenta ie, adaptat pentru culegerea datelor de proces.

Pentru a satisface o gam larg de cerin e, s-au dezvoltat familii demagistrale care cuprind mai multe variante ale unei magistrale de baz i suntcompatibile între ele într-o oarecare m sur (interfe ele dezvoltate pentru acestevariante 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.

Page 12: ASC 4 Nivelul Fizic Subl

ARHITECTURA SISTEMELOR DE CALCUL182

În domeniul PC-urilor, s-au dezvoltat mai multe magistrale care au devenitstandarde de facto înainte ca acestea s fie propuse pentru standardizare formal :ISA, EISA, VESA, PCI, SCSI, AGP etc.

Dup cum s-a ar tat, o magistral (bus) este o structur de interconectare (unansamblu de linii de comunica ii) între mai multe circuite sau unit i ale unuicalculator. Un PC are diferite tipuri de magistrale, între care se afl urm toarele:magistrala procesorului, magistrala de adrese, magistrala memoriei, magistrala I/O.

Exemple. Camac (fizic nuclear ), FastBus (fizica energetic ), OmniBus(PDP-8), UniBus (PDP-11), MassBus (VAX i PDP-11), MegaBus (Moneywell),MicroChannel (PS/2), NuBus (MacIntosh 2), VersaBus (Motorola), VME(Motorola 680x0), MultiBus 1 (INTEL 8086), MultiBus 2 (INTEL 80386), ISA sauATBus (INTEL 80286), EISA (INTEL 80386), MCA (IBM, 80386), VLBus(VESA, 80486), PCI (Pentium), FireWire (IEEE 1394) etc.

4.3.4. Magistrala procesorului

Magistrala procesorului este calea de comunica ie între CPU i cipurile cucare lucreaz direct. Aceast magistral este folosit pentru a transfera date, deexemplu între CPU i memoria cache extern . Cele mai multe sisteme au un cacheextern pentru CPU; aceste memorii cache sunt în general folosite în toate sistemelecare utilizeaz cipuri 486, Pentium, Pentium Pro sau ulterioare.

Deoarece scopul magistralei procesorului este transmiterea i primireadatelor de la CPU cu cea mai mare vitez posibil , aceast magistral lucreaz la ovitez mult mai mare decât orice alt magistral din sistem: aici nu existstrangul ri. Magistrala este compus din linii de semnal utilizate pentru date,pentru adrese i pentru comenzi.

Exemple.1. Într-un sistem 486, magistrala procesorului este compus din 32 de linii

de adrese, 32 de linii de date i câteva linii de comand .2. Magistrala procesorului dintr-un sistem Pentium are 64 de linii de date,

32 de linii de adrese i linii de comand asociate.3. Sistemul Pentium Pro are 36 de linii de adrese, iar în rest are o magistral

similar cu cea a sistemului Pentium.Magistrala procesorului lucreaz la aceea i frecven cu cea a ceasului de

baz ca CPU în exterior. Acest lucru poate conduce la concluzii gre ite deoarececele mai multe procesoare actuale utilizeaz o frecven de lucru intern mult maimare decât a oric rei magistrale din sistem.

Exemplu. Un sistem Pentium 100 are un procesor Pentium care lucreazintern la 100 MHz, dar în exterior lucreaz la numai 66,6 MHz. Aceea i frecvenextern de lucru (66,6 MHz) o au i procesoarele Pentium 133, Pentium 166 ichiar Pentium Pro 200. În cele mai multe dintre noile sisteme, frecven a real delucru a procesorului este un multiplu (de 1,5 ori, de 2 ori, de 2,5 ori, de 3 ori etc.) alfrecven ei magistralei procesorului.

Alya
Highlight
Page 13: ASC 4 Nivelul Fizic Subl

Structura unui calculator 183

Magistrala procesorului este legat la pinii procesorului i poate transfera unbit de date pe o linie de date la fiecare perioad sau la dou perioade ale ceasului.Astfel, un sistem 486 poate transfera 32 bi i de date simultan, în timp ce un sistemPentium sau Pentium II poate transfera 64 bi i de date la un moment dat.

Pentru a determina viteza de transfer pe magistrala procesorului semultiplic l imea datelor (32 de bi i pentru 486 sau 64 de bi i pentru Pentium iPentium II) cu frecven a ceasului magistralei (aceea i cu frecven a ceasului de bazal procesorului).

Exemplu. Un cip Pentium de 66/100/133/166/200 MHz care ruleaz la 66MHz poate transfera un lot de date la fiecare perioad de ceas pe fiecare linie dedate. Se ob ine astfel o vitez maxim instantanee de transfer de 528 MB pesecund . Acest rezultat deriv din urm toarea formul :

66 MHz × 64 bi i = 4.224 megabi i/secund ;4.224 megabi i/secund : 8 = 528 MB/secund .

Aceast vitez de transfer, adesea numit rgime de band a magistralei,reprezint o valoare maxim . Ca toate valorile maxime, aceast vitez nu reprezint

rgimea de band în func ionarea normal ; va rezulta o valoare medie mai sc zuta vitezei transferului de date. Al i factori de limitare, cum ar fi proiectarea setuluide cipuri, viteza memoriei i altele, contribuie la sc derea l rgimii de bandefective.

Între unit ile sau circuitele conectate la magistral se disting unit i de tipmaster, care au ini iativa comunic rii pe magistral , i unit i de tip slave, care

spund la ini iativa de comunicare a masterului.Exemple. Perechi master-slave: UC – memorie (acces la instruc iuni i la

date); UC – port I/O (transfer de date); UC – coprocesor (tratarea instruc iunilor învirgul mobil ); dispozitive I/O – memorie (accesul la operanzi) etc.

În cazul procesoarelor moderne, comunica ia cu cipurile externe procesoruluia introdus no iunile de magistrale FSB, BSB i PSB

a) În cazul procesoarelor cu memorie cache L2 (L3, în cazul procesoarelor K6-2+ i K6-3) care nu se afl în interiorul procesorului (exemple tipice fiindprocesoarele pe socket 7, slot 1 i slot A), leg tura dintre acesta i northbridge poartdenumirea de magistral FSB (Front Side Bus), iar frecven a de baz a acesteiaînmul it cu multiplicatorul d frecven a de lucru a procesorului. Între procesor imemoria cache L2 conexiunea se face prin magistrala BSB (Back Side Bus), omagistral de memorie care func ioneaz fie la frecven a FSB (la procesoarele pesocket 7), fie la jum tate din frecven a procesorului (la procesoarele Intel pe slot 1),fie între 1/3 i 1/2 din frecven a procesorului (la procesoarele AMD pe slot A).

Exemplu. Un FSB pe 32 de bi i, operând la o frecven de 100 MHz i carerealizeaz 4 transferuri pe ciclu, are o l rgime de band de 1.600 MB/s.Produc torii specific viteza FSB-ului în MT/s (Mega Transfers per second). Daco plac de baz are un FSB cu frecven a de tact de 266 MHz i realizeaz 4transferuri pe ciclu de ceas, FSB-ul certificat este de 1.066 MT/s.

Page 14: ASC 4 Nivelul Fizic Subl

ARHITECTURA SISTEMELOR DE CALCUL184

b) În cazul procesoarelor cu cache L2 integrat în procesor (Intel P3 iCeleron pe socket 370 i P4 toate variantele, respectiv, AMD Athlon pe socket A,754, 939, 940), BSB-ul a disp rut, nemaifiind necesar.

Combinând a) i b), rezult c nu este corect s se foloseasc termenul deFSB în cazul procesoarelor actuale, termenul mai potrivit fiind Processor Side Bus(PSB) sau System Side Bus (SSB), iar în cazul procesoarelor Opteron/Athlon64nici m car termenul PSB nu este corect, leg tura dintre procesor i northbridgefiind de tip punct-la-punct (point-to-point).

4.3.4.1. Conectarea la magistralMajoritatea circuitelor logice nu dispun la ie ire de amplificatoare capabile s

furnizeze puterea necesar transmiterii unui semnal binar pe liniile magistralei(datorit capacit ii magistralei, pe de o parte, i a înc rc rii intr rii cu alte sarcini).Pentru transmitere se utilizeaz circuitele amplificatoare de putere numite driver-e.

La recep ie este necesar utilizarea unui receptor de tip Trigger-Schmidt carereface semnalul degradat din cauza capacit ii limitate a liniei de transmisiune saua eventualelor zgomote. De multe ori, un circuit poate s transmit i în acela itimp s fie receptor, rezultând c pentru interfa area cu magistrala sistemuluitrebuie utilizate circuite mixte numite transceiver-e (transmitter + receiver).

Din punctul de vedere al st rilor logice, circuitele de conectare la magistralsunt circuite cu trei st ri, în care a treia stare (stare flotant ) permite acestora s fiedeconectate logic când se afl în repaus. Un alt tip de circuit de conectare estecircuitul cu colectorul în gol (realizeaz func ia SAU-cablat).

4.3.4.2. Magistralele sincroneDin punctul de vedere al caden ei schimbului de date care are loc pe

magistral exist arhitecturi sincrone i asincrone.Magistrala sincron dispune de o linie de ceas comandat de un oscilator cu

cuar . Toate opera iile de pe o magistral sincron sunt efectuate într-un num rîntreg de perioade de ceas.

Exemplu. În figura 4.4 este prezentat modul de lucru al magistralei sincroneîn cazul opera iei de citire a unui cuvânt din memorie.

Nota ii folosite:Ø – semnal de ceas real (un ciclu de ceas TC = 250 ns);MREQ – cerere acces memorie (Memory Request);RD – citire (Read);TML – timp de stabilire a adreselor înainte de MREQ (> 60 ns; la o frecven de ceas4 MHz se accept un timp de cre tere de 10 ns);TM – activarea semnalului MREQ fa de frontul descresc tor în ciclul T1 (< 85 ns);TRL – activarea semnalului RD fa de frontul descresc tor în ciclul T1 (< 85 ns);TDS – date disponibile înainte de frontul descresc tor în ciclul T3 (> 50 ns);TMH – tranzi ia semnalului MREQ dup frontul descresc tor în ciclul T3 (< 85 ns);TRH – tranzi ia semnalului RD fa de frontul descresc tor în ciclul T3 (< 85ns);TDH – men inerea datelor dup ridicarea semnalului de date (dup comutarea lui RD, > 0).

Page 15: ASC 4 Nivelul Fizic Subl

Structura unui calculator 185

T1 T2 T3

Ø

ADDR ADRES CUVÂNT

DATE DATE

TM TDS

MREQ TML

TMH

RDTRL TRH

TDH

Fig. 4.4. Schema accesului la magistrala sincron .

Începutul ciclului T1 este marcat de frontul cresc tor al semnalului Ø. Înprima parte a ciclului T1 procesorul plaseaz pe magistrala de adrese adresa care sedore te a fi citit din memorie. Pozi ionarea adresei pe magistral corespundeactiv rii mai multor semnale binare care formeaz adresa. Dup stabilirea adreseipe magistral , devin active semnalele MREQ i RD. MREQ indic prin activareasa c se efectueaz un acces la memorie i nu un acces la dispozitivele I/O. RDdefine te prin activarea sa o opera ie de citire din memorie.

În timpul ciclului T2 nu are loc nici o modificare pe magistral pentru apermite memoriei decodificarea adresei de pe magistrala de adrese i pozi ionareainforma iei cerute pe magistrala de date.

În timpul ciclului T3, pe frontul descresc tor al semnalului de ceas,microprocesorul capteaz i înregistreaz într-un registru intern informa ia prezentpe magistral . Odat terminat aceast opera iune, procesorul pune în repaussemnalele MREQ i RD (le ridic în 1).

Dac este nevoie mai departe de o alt opera ie de citire sau scriere, aceastapoate începe pe frontul cresc tor al urm torului ciclu de ceas. Dac memoria nueste capabil s plaseze datele pe magistral în timpul cerut (s fie respectat TDS),atunci memoria activeaz un semnal de wait, prin care cere prelungirea timpului de

Page 16: ASC 4 Nivelul Fizic Subl

ARHITECTURA SISTEMELOR DE CALCUL186

citire. St rile de wait, care sunt generate de surplusul de vitez a procesorului încompara ie cu viteza memoriei, încetinesc viteza calculatorului.

Avantaj: func ionare relativ simpl .Dezavantaje:1. orice opera ie pe magistral corespunde unui num r întreg de perioade

de ceas, ceea ce conduce la o func ionare suboptimal din punct devedere al vitezei de lucru, datorat faptului c o opera ie care dureaz 3,1perioade de ceas va fi realizat în 4 perioade de ceas, chiar dacmemoria poate s r spund mai repede;

2. magistrala sincron evolueaz dificil odat cu procesul tehnologic derealizare a componentelor, datorit faptului c prin utilizarea unormemorii de vitez mai mare nu se poate reduce durata unei opera ii decitire-scriere pân când nu este modificat frecven a ceasului careguverneaz magistrala.

Concluzie. Pentru a conecta în mod optim un ansamblu de circuite lamagistral , este preferat arhitectura asincron .

4.3.4.3. Magistralele asincrone

În acest caz, nu este necesar existen a unui semnal de ceas care ssupervizeze transferul. Deci, durata unei opera iuni pe magistral este variabil , înfunc ie de performan ele circuitelor utilizate.

Exemplu. În figura 4.5 este prezentat modul de lucru al magistraleiasincrone în cazul opera iei de citire a unui cuvânt din memorie.

ADDR ADRES CUVÂNT

MREQ

RD

MSYN

DATE DATE

SSYN

Fig. 4.5. Schema accesului la magistrala asincron .

Page 17: ASC 4 Nivelul Fizic Subl

Structura unui calculator 187

MSYN (Master Synchronisation) i SSYN (Slave Synchronisation) suntsemnalele de sincronizare care asigur respectarea ordinii diverselor momente dinopera iunea de citire. De obicei, master este UC i slave este memoria.

Dup ce adresa cuvântului este depus pe magistrala de adrese de c tre UC idup ce semnalele MREQ i RD devin active, UC activeaz semnalul MSYN carecomunic memoriei începerea opera iei de citire.

Memoria efectueaz citirea la vitez proprie, iar dup depunerea pemagistral a informa iei cerute activeaz semnalul SSYN. Acest semnal informeazprocesorul c datele cerute sunt valide pe magistral . Procesorul încarc datele înregistrele interne, dup care dezactiveaz semnalele MREQ, RD i MSYN.Dezactivarea lui MSYN este sesizat de memorie, care pune în repaus SSYN ielibereaz magistrala de date. Astfel s-a ajuns din nou la starea ini ial i rezult cpoate începe o alt opera ie pe magistral .

Ansamblul semnalelor de mai sus, cu ajutorul c rora se efectueaz transferuldatelor, corespunde tehnici full handshake (tehnica acordului confirmat), careinclude urm toarele opera ii:

• activarea lui MSYN;• activarea lui SSYN ca r spuns la MSYN;• dezactivarea lui MSYN ca r spuns la SSYN;• dezactivarea lui SSYN ca r spuns la MSYN.Observa ie. Aceast tehnic este total independent de timp. Fiecare

eveniment din succesiune este cauzat de evenimentul precedent. De aceeadispozitivele conectate la o magistral asincron pot fi u or înlocuite cu altele maiperformante, pe m sur ce tehnologia avanseaz . În consecin , avantajul folosiriimagistralei asincrone apare evident în compara ie cu magistrala sincron .

Pe o magistral sincron UC î i pozi ioneaz semnalele, iar memoria saucircuitele I/O nu fac altceva decât s r spund solicit rilor UC f a fi necesar osincronizare cu aceasta. Astfel, simplitatea magistralei sincrone const în lipsasemnalelor MSYN i SSYN.

4.3.4.4. Transferul datelor pe magistrala local a procesorului (PLB)Tranzac iile pe magistrala local a procesorului, PLB (Processor Local Bus),

constau în mai multe faze de adresare i date. În func ie de nivelul de activitate amagistralei i capacitatea slave PLB, acestea pot dura unul sau mai multe cicluri demagistral PLB. De asemenea, pipeline-ul de adresare i livrarea datelor iadreselor separate sunt îmbun ite prin modul în care aceste faze sunt gestionate.Tranzac ia de adresare con ine 3 faze: cerere, transfer i confirmare de adresare. Otranzac ie PLB începe când un master adun adresele sale i transfer semnalele învedere ob inerii dreptului asupra magistralei în timpul fazei de cerere. Odat cearbitrul PLB ofer dreptul asupra magistralei, adresa masterului este prezentat ladispozitivele slave în timpul fazei de transfer. Ciclul de adresare se termin când unslave încheie adresa masterului i transfer datele în timpul fazei de confirmare aadresei.

Page 18: ASC 4 Nivelul Fizic Subl

ARHITECTURA SISTEMELOR DE CALCUL188

Figura 4.6 ilustreaz dou pipeline-uri de adresare de citire i scriere, împreuncu fazele de citire i scriere a datelor. Master A i B reprezint starea fiec rei adresemaster. PLB arbitreaz între aceste cereri i trimite cererea masterului selectat lamagistrala de adrese a PLB slave. Urma cu eticheta „faza de adresare” arat stareamagistralei de adrese a slave-ului PLB de-a lungul fiec rui tact PLB.

Fig. 4.6. Exemplu de protocol de transfer PLB.

a cum se arat în figura 4.6, specifica iile PLB accept implement rile încare 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 lamagistrala slave i unitatea slave confirm adresa de-a lungul aceluia i ciclu. Dacun master trimite o cerere care nu poate fi imediat trimis la magistrala slave, fazade 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 nucleelorprocesorului i controlerelor magistralei pentru utilizare i aplicare în nucleu, subform 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 dedate între dispozitivele master i slave care sunt dotate cu o interfa de magistralPLB 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, dardecuplate, magistrale de citire, magistrale de scriere, control al transferului i stareasemnalelor pentru fiecare magistral de date.

PLB este o magistral complet sincron . O singur surs de ceas prevedetiming-ul pentru toate semnalele de PLB. Toate unit ile master i slave care suntanexa i la PLB folosesc acest ceas ca surs .

PLB se diferen iaz prin urm toarele caracteristici de performan :

Page 19: ASC 4 Nivelul Fizic Subl

Structura unui calculator 189

• transferurile de citire i scriere se suprapun pentru a permite doutransferuri de date per ciclu pentru maximizarea folosirii magistralei;

• magistrale decuplate pentru adresare i date sus in capacitatea dedivizare a tranzac iilor pentru o l ime de band mai bun ;

• protocolul de suprapunere a cererii de magistralei i protocolul de oferirea dreptului magistralei reduc întârzierile cauzate de arbitraj;

• PLB este o magistral complet sincron .

4.3.4.5. Arbitrajul magistraleiPân acum s-a considerat c exist un singur master pe magistral . În

realitate, în cele mai multe cazuri exist mai multe dispozitive I/O care pot ceresimultan accesul la memorie, ceea ce conduce la necesitatea introducerii unorreguli de arbitraj.

Arbitrajul magistralei se poate realiza în dou variante:• structura centralizat , în care exist fizic un arbitru;• structura descentralizat , în care fizic nu exist un arbitru de magistral ,

dar care implementeaz func iile acestuia.Structura centralizatAlgoritmul cu priorit i statice (daisy chain). Se presupune existen a a

cinci dispozitive de I/O care cer simultan accesul la magistral prin linia de BUSREQUEST, iar arbitrul le r spunde prin linia de acordare a magistralei (BUSGRANT).

Circuitele I/O care pot deveni master sunt legate printr-un SAU cablat lalinia de cerere de magistral BUS REQUEST. Când cel pu in unul dintre circuitecere accesul la magistral , arbitrul este sesizat, iar când este posibil (cândmagistrala este liber ) acesta acord accesul la magistral printr-o linie de acordarea magistralei (BUS GRANT), astfel încât arbitrul nu vede decât o singur cerere,chiar dac mai multe circuite cer accesul (vezi figura 4.7).

BUS REQUEST

BUS GRANT Dispozitive I/O

Fig. 4.7. Algoritmul cu priorit i statice (daisy chain).

arbitru

1 2 3 4 5

Page 20: ASC 4 Nivelul Fizic Subl

ARHITECTURA SISTEMELOR DE CALCUL190

Linia de acordare a magistralei traverseaz în serie cele cinci circuite de I/O(pe aceast linie dispozitivele I/O sunt a ezate în cascad ). Când primul circuit I/Orecep ioneaz acordarea magistralei, el cunoa te dac are sau nu nevoie demagistral , adic dac a formulat cererea de acces sau nu. Dac are nevoie, el acceptmagistrala i preia controlul ei, iar dac nu, permite propagarea semnalului deacordare mai departe, c tre circuitul urm tor. Prioritatea scade de la stânga spredreapta (prioritatea este direct propor ional cu apropierea de arbitru).

În cele ce urmeaz se va prezenta o variant care permite existen a maimultor niveluri de prioritate. Aceasta va cuprinde dou niveluri de ierarhizare:primul cuprinde circuitele 1 i 2, iar cel de-al doilea cuprinde circuitele 3, 4 i 5.Astfel, rezult dou linii de acordare a magistralei.

Pentru fiecare nivel de prioritate exist o linie de cerere de magistral i olinie de acordare de magistral . Dispozitivele I/O pot fi repartizate în diferitemoduri pe nivelurile de prioritate (fig. 4.8).

BUS REQUEST 1BUS REQUEST 2

BUS GRANT 1 BUS GRANT 2

Fig. 4.8. Repartizarea dispozitivelor I/O pe nivele de prioritate.

O alt variant ar fi urm toarea: în unele scheme de arbitraj poate fi folosit olinie care specific starea BUS BUSY (ocuparea magistralei), activat de unitatea cepreia controlul magistralei. Odat ce linia de ocupare a magistralei a fost activat , sedezactiveaz cererea de acces la magistral , aceasta permi ând altor unit i s cearaccesul în timpul transferului de date pe magistral i, mai mult chiar, permi ândarbitrului de magistral s fac o preselec ie a unit ii care are prioritate. Astfel, odatce transferul de date pe magistral a luat sfâr it, magistrala este eliberat i unitateapreselectat preia controlul magistralei (aceast tehnic este mai eficient ). De obicei,aceast variant cu preselec ie i BUS BUSY este folosit la magistralele Motorola.

Algoritmul cu cereri independente. Acest algoritm reprezint cel maigeneral caz de arbitraj al magistralei, dar din punct de vedere hardware este greu deimplementat. Fiecare dispozitiv emite o cerere de bus independent c tre arbitru.Acesta r spunde pe linii separate dispozitivelor. Dispozitivul care prime te r spunsafirmativ poate folosi magistrala. Logica de acordare a magistralei esteimplementat în arbitru.

Figura 4.9. prezint un exemplu de schem de arbitraj cu cereri independente.

arbitru

1 2 3 4 5

Page 21: ASC 4 Nivelul Fizic Subl

Structura unui calculator 191

Fig. 4.9. Algoritmul cu cereri independente.

Nota iile folosite:BR = linia de cerere de magistral (BUS REQUEST);BG = linia de acordare a magistralei (BUS GRANT);ACK = linia de confirmare (ACKnowledge)BUS = magistrala.

Algoritmul cu interogare ciclic (polling). Exist log2m linii de interogarepentru cele m dispozitive. Dispozitivele sunt prev zute cu câte un decodor pentru arecupera codul de interogare. Dispozitivul care î i recunoa te codul de interogareactiveaz semnalul de confirmare ACK (acknowledge) i preia controlulmagistralei.

Arbitrul întrerupe ciclul de interogare pân când dispozitivul c ruia i s-aacordat magistrala î i încheie opera iile pe magistral (vezi figura 4.10). Prioritateafiec rui dispozitiv este setat în codul de interogare.

În majoritatea sistemelor de calcul, unitatea central trebuie s negociezeaccesul la magistral în acela i mod cu celelalte unit i. În general, unitateacentral are prioritatea cea mai sc zut ; ea utilizeaz magistrala doar când nici unalt circuit nu are nevoie de ea. Aceasta permite circuitelor I/O s realizeze transferulde date atunci când este necesar, f s apar pericolul de pierdere a datelor.

Pentru fiecare nivel de prioritate exist o linie de cerere de magistral i olinie de acordare de magistral .

BUS

ACK

BG 1

BG 2

BG m

BR m

BR 2

BR 1

arbitru

1 2 m

Page 22: ASC 4 Nivelul Fizic Subl

ARHITECTURA SISTEMELOR DE CALCUL192

Fig. 4.10. Algoritmul cu interogare ciclic (polling).

În majoritatea sistemelor de calcul, unitatea central trebuie s negociezeaccesul la magistral în acela i mod cu celelalte unit i. În general, unitatea centralare prioritatea cea mai sc zut ; ea utilizeaz magistrala doar când nici un alt circuitnu are nevoie de ea. Aceasta permite circuitelor I/O s realizeze transferul de dateatunci când este necesar, f s apar pericolul de pierdere a datelor.

Structura descentralizatÎn aceast structur nu exist un arbitru veritabil de magistral (circuit fizic),

ci fiecare unitate î i gestioneaz singur accesul la magistral realizând o parte dinfunc iile arbitrului.

Exemplu. La sistemele VAX, exist 16 niveluri de prioritate i fiec ruia îieste asociat o linie de cerere de magistral (sistemul poate accepta maximum 16unit i, poten iali master de magistral ).

Când o unitate dore te s utilizeze magistrala, ea activeaz propria linie decerere de magistral ; la finele transferului de date curent de pe magistral , fiecareunitate examineaz cererile de acordare a magistralei. Circuitele logice de pe fiecareunitate permit accesul la magistral doar unit ii cu cea mai mare prioritate, iar pentrucelelalte unit i accesul nu este permis.

Avantajul este c permite o implementare simpl , iar dezavantajul, cnecesit mai multe linii, deoarece fiecare unitate recep ioneaz cele 16 linii.

Exemplu. Pentru sistemele Intel se folose te schema de arbitraj din figura 4.11.Pentru gestiunea magistralei sunt utilizate:• linia de cerere de magistral BUS REQUEST (SAU cablat);• linia care semnific ocuparea magistralei BUS BUSY, activat de

circuitele ce ocup magistrala (de masterul magistralei);• linia de arbitraj ARBITRATION LINE, pe care unit ile sunt a ezate în

cascad (conform structurii centralizate);

log2m liniide interogare

confirmareACK

BUS REQUEST

BUS

arbitru

1 2 m

Page 23: ASC 4 Nivelul Fizic Subl

Structura unui calculator 193

BUS REQUEST BUS BUSYARBITRATION LINE

+ 5V

Fig. 4.11. Structura descentralizat de arbitraj al magistralei.

• conexiunea la +5V (1 logic). Acest +5V înseamn nivelul activ al liniei:dac nici un circuit nu cere accesul pe magistral , poten ialul de +5V sepropag pe toat linia de arbitraj (toate unit ile în repaus pleac de la oprioritate egal ).

Pentru a ob ine accesul la magistral , o unitate trebuie s verifice:1. dac magistrala este liber ;2. dac semnalul BUS BUSY este dezactivat;3. dac linia de arbitraj prezent la intrarea sa este liber .Dac aceste trei condi ii sunt îndeplinite, unitatea pune în 0 ie irea sa, ceea

ce are ca efect propagarea st rii de 0 pe linia de arbitraj pentru toate unit ile careurmeaz .

În acest moment exist o singur unitate care are intrarea activ (în +5V) iie irea inactiv (în 0), ceea ce face ca aceast unitate s devin masterulmagistralei; ea activeaz linia de BUS BUSY i este liber s efectueze transferulpe magistral .

Lan ul de priorit i la structura descentralizat este, deci, urm torul: o unitateob ine accesul la magistral înaintea unit ii de la dreapta sa, dar dup cele de lastânga.

Avantajele schemei fa de structura cu arbitru sunt simplitatea (arbitrul demagistral lipse te i sunt trei teste de efectuat pentru unit i) i rapiditatea.

Algoritmul cu priorit i dinamice (rotating daisy chain). Acest algoritmreprezint varianta descentralizat a algoritmului cu priorit i statice (daisy chain).Pentru algoritmul cu priorit i dinamice nu mai exist arbitru de magistral . Acestbloc este divizat în subblocuri descentralizate (vezi figura 4.12).

Semnalul de acordare de magistral este conectat în bucl închis întresubblocurile de control ale magistralei.

Subblocul conectat cu dispozitivul care a preluat controlul magistralei devinemaster, modificând astfel „distan a” dintre dispozitive i subblocul de arbitraj.Dispozitivul care a preluat controlul magistralei va avea la urm toarea cerere demagistral prioritatea minim .

Subblocurile de arbitraj comunic între ele pentru a arbitra cererea demagistral prin semnalele BUS REQUEST i ACK. De asemenea, exist leg turielectrice pentru dialog între fiecare subbloc de control al magistralei i dispozitivulasociat.

1 2 3 4 5

Page 24: ASC 4 Nivelul Fizic Subl

ARHITECTURA SISTEMELOR DE CALCUL194

Fig. 4.12. Algoritmul cu priorit i dinamice (rotating daisy chain).

4.3.4.6. Magistrala VMEMagistrala VME (Versa Module Eurocard) este un exemplu de magistral

asincron , de înalt performan , proiectat pentru utilizarea intensiv în mediulindustrial; ea con ine 32 de linii de adrese i 32 de linii de date. Pe lâng aplica iileindustriale, este utilizat i în minicalculatoare. Magistrala VME a fost dezvoltat din magistrala Versa Bus a firmeiMotorola, iar specifica iile pentru magistrala VME sunt con inute în norma IEEEP1014. Spre deosebire de magistrala IBM PC, magistrala VME a fost proiectaturm rind trei scopuri: interoperabilitatea, performan a i fiabilitatea. Magistrala VME se prezint sub trei forme: VSB, VMS i VME. Acestemagistrale specifice sunt bine adaptate la realizarea unor sisteme de calcul variate,de la scheme de dezvoltare i pân la sisteme multiprocesor. Fiecare procesor dispune de o memorie local , legat prin VSB, care este omagistral local proprie magistralei VME. În memoria local se afl toateprogramele i datele asociate unui procesor. Instruc iunile referitoare la memoriaglobal sunt singurele care necesit utilizarea magistralei VME, celelalteinstruc iuni merg pe magistrala VSB. În consecin , performan a global a sistemului este superioar limitei de40MB/s impuse de tehnologia VME. Exemplu. La sistemele cu 16 procesoare care fac acces la cuvinte de 32 debi i, cu un ciclu de magistral de 200 ns, l rgimea de band calculat este de 320MB/s. Dac se face presupunerea c 90% din accesele la memorie sunt efectuate înmemoriile locale (ipotez realist ), rezult c magistrala VME va fi înc rcat doar lavaloarea de 32MB/s (adic restul de 10%), ceea ce este mai pu in de 40MB/s(valoare impus de tehnologia VME).

1 2 m

BUSGRANT

ACK

BUSREQUEST

BUS

Page 25: ASC 4 Nivelul Fizic Subl

Structura unui calculator 195

Familia VME cuprinde o magistral serie pe care comunica iile se realizeazprin transmisiuni seriale (VMS). Magistrala VMS este independent de celelaltedou i ofer o l rgime de band de 30Mb/s (la transmisia serial banda se exprimîn megabi i pe secund , nu în megaocte i pe secund ). Ea corespunde necesit ilorde comunica ie cu debit sc zut sau transferului informa iilor de sincronizare întreprocesoare. Magistrala VMS este asem toare unei re ele locale, ea fiind bazatpe un cablu coaxial. Exemplul 1: sistem cu trei pl ci VME: procesor, memorie, controler I/O.

Fig. 4.13. Exemplu simplu de magistral VME.

Exemplul 2: sistem multiprocesor.

VSB BUS

VME BUS

VMS BUS

ML = memorie local MP = memorie partajat

Fig. 4.14. Exemplu complex de magistral VME.

Magistralele VME, VSB i VMS sunt magistrale pe care comunica iile auloc independent i simultan, nefiind sincronizate.

Magistralele VME cuprind patru grupe de linii: liniile de date, liniile dearbitraj al magistralei, liniile de întreruperi i liniile de comand .

În ceea ce prive te unit ile implicate în transferul de pe liniile de date,exist , pe lâng modulele master i slave, înc dou tipuri de unit i func ionalecare particip la schimbul de date pe magistral : monitorul de urm rire isupervizorul de magistral .

UC M I/O

Magistral VME

ML MLML

UC UC MPUC

Page 26: ASC 4 Nivelul Fizic Subl

ARHITECTURA SISTEMELOR DE CALCUL196

Monitorul de urm rire analizeaz traficul de pe magistral i genereaz oîntrerupere atunci când detecteaz o ac iune sau o adres anormal (are rolul de asemnaliza o ac iune nepermis ). Exemplu. O tentativ de scriere în memorie într-o zon protejat esterecunoscut de monitorul de urm rire i oprit prin cererea de întrerupere aprocesorului). Monitorul de urm rire înregistreaz în memorie într-un spa iu cu n pozi iisemnalele care tranziteaz magistrala. Aceasta înseamn c este posibilvizualizarea ultimelor cicluri de magistral care au precedat cererea de întrerupere,de unde rezult c utilizatorul poate detecta eventualele anomalii de pe magistral .

Supervizorul de magistral îndepline te func ia de urm rire temporal asemnalelor de pe magistral . Exemplu. Dac un ciclu de magistral este prea lung, rezult o eroare deadresare, recunoscut prin faptul c nu exist nici un element care s r spundacestei adres ri. Rolul supervizorului de magistral este important datorit faptului

f interven ia acestuia exist posibilitatea ca ciclul de magistral s seprelungeasc un timp nedefinit, ceea ce ar duce la blocarea magistralei.

Pe liniile de arbitraj, magistrala VME suport mai multe scheme de lucru,dintre care, în general, sunt recomandate trei: arbitrajul simplu, arbitrajul cupriorit i fixe i arbitrajul cu priorit i circulare.

Arbitrajul simplu presupune existen a unui lan de unit i pe un singur nivel.Arbitrajul cu priorit i fixe permite existen a mai multor niveluri de

prioritate, între care se stabile te o anumit ordine.Arbitrajul cu priorit i circulare implic înl uirea ciclic a unit ilor,

existând astfel posibilitatea unui transfer continuu al priorit ilor. El presupuneexisten a unor linii de cerere de magistral cu aceea i prioritate; la magistrala VMEexist patru astfel de linii de cerere de magistral . Acestea func ioneaz astfel: laprimul ciclu de magistral este servit cererea sosit pe linia 0, la ciclul urm torcererea sosit pe linia 1 .a.m.d. Dac nu exist nici o cerere pe linia considerat ,atunci se analizeaz linia urm toare. Unit ile care pot deveni master sunt legate înlan la cele patru linii. Oricare ar fi schema de arbitraj utilizat , o unitate master care dore teaccesul la magistral transmite o cerere în acest sens c tre arbitru pe o liniecorespunz toare; când cererea este satisf cut i se ob ine magistrala, acea unitatemaster transmite arbitrului un semnal de ocupare a magistralei i anuleaz cerereasa. În acest mod, devine posibil alocarea anticipat a magistralei unei alte unit icare o solicit . Noua unitate master care a adresat cererea de magistral ocupmagistrala imediat dup eliberarea acesteia. Aceast facilitate de alocare anticipat ,care provine din modul de lucru al procesoarelor Motorola, permite o îmbun irenet a performan elor magistralei. În plus, la magistrala VME arbitrului de magistral îi este permissuspendarea activit ii unui master de prioritate sc zut angajat într-o secvenlung pe magistral (de exemplu, într-un transfer de blocuri de date). Acest lucru seîntâmpl atunci când un master cu prioritate mare face o cerere de magistral .

Page 27: ASC 4 Nivelul Fizic Subl

Structura unui calculator 197

4.3.5. Magistrala memoriei

Magistrala memoriei este utilizat pentru transferul informa iilor între CPUi memoria principal – memoria RAM a sistemului. Aceast magistral este o

parte din magistrala procesorului sau, de cele mai multe ori, este implementatseparat 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 escuneori posibilit ile cipurilor DRAM standard. În astfel de sisteme este utilizat un setde cipuri, controlerul memoriei, care realizeaz interfa a între magistrala rapid aprocesorului i memoria principal , mai lent (vezi figura 4.15). Acest set de cipurieste în general acela i cu setul de cipuri responsabil cu gestionarea magistralei I/O.

Fig. 4.15. Schema de interconectare a magistralelor unui calculator.

Informa ia care circul prin magistrala memoriei este transferat la o vitezmult mai mic decât viteza de transfer a informa iei pe magistrala procesorului.

imea magistralei de memorie este întotdeauna egal cu cea a magistraleiprocesorului. Dac procesorul are 32/64 bi i, magistrala memoriei are tot 32/64 bi i.

Procesoarele mai noi aduc o nou arhitectur a pl cii de baz , cu dou cipseturi:northbridge i southbridge, între care sarcinile sunt împ ite (vezi figura 4.16 i 4.17).Chipul northbridge, cunoscut ca Memory Controller Hub (MCH), se ocup decomunica iile între CPU, memorie, grafic , interfe e i southbridge. Unele northbridge-uri con in controlere video integrate, numite Graphics and Memory Controller Hub(GMCH). Deoarece diversele procesoare i RAM-ul necesit semnale diferite, unnorthbridge va func iona doar cu una sau dou clase de CPU i cu un singur tip de RAM.

Magistrala memoriei

Magistrala principal asistemului

Magistrala procesorului

CPU Cache extern

Cipurilecontroleruluide memorie

RAM

Magistrala principal asistemului

Page 28: ASC 4 Nivelul Fizic Subl

ARHITECTURA SISTEMELOR DE CALCUL198

Fig. 4.16. Arhitectura northbridge-southbridge.

Fig. 4.17. Arhitectura northbridge-southbridge la procesoare dual-core în sisteme server.

În forma sa cea mai simpl , southbridge integreaz controlere I/O, furnizeazinterfa a cu perifericele i magistralele i transfer date din/în northbridge, fie prinmagistrala PCI la modelele mai vechi (care creeaz efectul de gâtuire – bottleneck),fie prin interconexiunea proprie (o interfa de înalt performan ), la cipurile mairecente. Southbridge este cunoscut ca I/O Controller Hub (ICH). Spre deosebire denorthbridge, southbridge nu este conectat direct la CPU, având în responsabilitatedispozitivele mai lente. Un anumit southbridge va func iona cu mai multe tipuri denorthbridge, dar aceste cipuri trebuie proiectate s lucreze împreun .

Page 29: ASC 4 Nivelul Fizic Subl

Structura unui calculator 199

4.3.6. Magistrala de adrese

Magistrala de adrese este o parte a magistralei procesorului i a celei dememorie. Magistrala unui sistem Pentium are 64 de linii de date, 32 linii de adresei câteva linii de comand . Aceste linii de adrese constituie magistrala de adrese; în

multe scheme bloc este inclus în magistrala procesorului i în cea a memoriei.Magistrala de adrese este folosit pentru a indica adresa de memorie sau

adresa de pe magistrala sistemului care va fi utilizat în cadrul opera iei de transferal datelor. Magistrala de adrese indic precis locul în care va avea loc urm torultransfer în memorie sau pe magistral . Dimensiunea magistralei de memoriedetermin m rimea memoriei pe care unitatea central o poate adresa direct.

4.3.7. Magistrala I/O

Magistrala I/O permite procesorului s comunice cu dispozitivele periferice.Magistrala i sloturile sale de extensie asociate sunt necesare pentru c nu esteposibil ca sistemele de baz s satisfac toate necesit ile tuturor celor care leachizi ioneaz . Magistrala I/O permite ad ugarea de dispozitive calculatoruluipentru a-i extinde posibilit ile. Componentele de baz ale calculatorului, cum ar ficontrolerele de hard disk i pl cile adaptoare video, pot fi ata ate sistemului prinintermediul sloturilor de extensie; de asemenea, se pot ata a dispozitive maispecializate, cum ar fi adaptoarele de re ea etc.

De la apari ia primului PC, s-au introdus mai multe tipuri de magistrale I/O(ISA, MCA, EISA etc.). Îmbun irea performan elor vizeaz trei domenii principale:

• procesoare mai rapide;• cerin e software sporite;• cerin e video mai mari.Fiecare dintre aceste trei cerin e impune ca magistrala I/O s fie cât mai

rapid posibil. Aproape toate sistemele PC livrate în prezent folosesc înc aceea iarhitectur de magistral ca la modelul IBM PC/AT din 1984. Dar, cele mai multedintre aceste sisteme con in acum i o magistral local de mare vitez , cum esteVLBus sau PCI, care ofer un nivel de performan mai ridicat pentru adaptoarelecare solicit a a ceva. Standardizarea este una dintre caracteristicile care audeterminat succesul sistemelor PC.

Aceste tipuri de magistrale se deosebesc prin volumul datelor transferatesimultan i prin viteza cu care se realizeaz acest transfer. Arhitectura magistraleieste realizat cu un set de cipuri care este conectat la magistrala procesorului. Îngeneral, aceste cipuri controleaz i magistrala memoriei.

4.3.7.1. Serial ATASATA (Serial Advanced Technology Attachment) este o magistral construit

în mod special pentru transferul de date între calculator i echipamente de stocare, cumar fi hard disk-ul sau unit ile optice. Principalele avantaje fa de vechile interfe e

Page 30: ASC 4 Nivelul Fizic Subl

ARHITECTURA SISTEMELOR DE CALCUL200

Parallel ATA sunt transferurile de date mai rapide, abilitatea de a deconecta sauinstala echipamente în timp ce calculatorul este func ional (hot swapping), cablurimai sub iri care permit sistemului de r cire cu aer s func ioneze mai eficient iopera ii mai sigure cu verific ri de integritate ale datelor mai riguroase.

Interfa a standard pentru controlerele SATA este AHCI (Advanced HostController Interface), care permite s fie folosite specifica iile avansate ale SATAcum ar fi hot plug sau NCQ (Native Command Queuing). Dac interfa a AHCI nueste implementat pe placa de baz , controlerele SATA ruleaz într-un mod careemuleaz interfa a IDE, dar în acest mod nu se pot beneficia de nici una dincaracteristicile SATA enumerate mai sus. Driver-ele native din sistemul de operareWindows XP nu suport interfa a AHCI, în timp ce sistemul de operare WindowsVista 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 i3,0 Gb/s. Exist planuri de viitor pentru un standard de 6 Gb/s, care ar fi înmomentul de fa folositor în tandem cu multiplicatori de porturi, pentru a permitemai multor discuri s fie conectate la un singur port SATA, împ ind l rgimea deband a portului între respectivele discuri.

SATA este o arhitectur de tip punct-la-punct (point-to-point), iarconexiunea între controler (H – host) i echipamentele de stocare (D – device,maximum 8 porturi) este una direct (vezi figura 4.18).

Fig. 4.18. Topologia SATA.

În PC-urile actuale, controlerul SATA este de cele mai multe ori plasat peplaca de baz sau instalat pe un slot PCI. Unele controlere SATA au mai multeporturi SATA i pot fi astfel conectate la mai multe echipamente, acestea având unidentificator 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, iarsemnalul este trimis folosind algoritmul NRZ (Non Return to Zero), cu semnale devoltaj mic, diferen iale (LVDS). În codarea de tip 8b/10b, semnalul de sincronizareeste inclus în secven a de date. Aceast tehnic este numit clock data recovery(recuperarea ceasului cu ajutorul datelor), deoarece nu folose te un semnal desincronizare separat. În schimb, are nevoie de o tranzi ie de la 0 la 1 în irul de dateserial pentru a face sincronizarea.

Varianta extern la magistralei SATA se nume te eSATA (introdus în 2004).

Page 31: ASC 4 Nivelul Fizic Subl

Structura unui calculator 201

4.3.7.2. Magistrala SCSISmall Computer System Interface (SCSI) este un standard al industriei

calculatoarelor ce are rolul de a conecta computerele cu dispozitivele periferice ca:hard disk-uri, driverele CD-ROM, imprimante, scanere i orice alt dispozitiv caretrebuie s transfere cantit i mari de date într-un timp foarte scurt.

Standardul SCSI specific interfa a hardware i software la un nivel careminimizeaz subordonarea fa de orice alt implementare hardware. Specifica iapermite conectarea unei mari variet i de periferice la multe tipuri de calculatoare.

O magistral SCSI este un tip de magistral care se conformeaz cerin elorfizice i electrice ale standardului SCSI standard. Un dispozitiv SCSI ( int ) sesupune oric rei unit i conectate la magistrala SCSI, fie c este vorba despre unechipament periferic sau un calculator. Fiec rui dispozitiv SCSI îi este atribuit unID SCSI (o valoare întreag , care identific unic dispozitivul în timpul opera iilor).

Fazele magistralei SCSI sunt intervale de timp de-a lungul c rora, princonven ie, anumite semnale de control sunt permise, iar altele nu sunt. MagistralaSCSI nu poate fi în mai mult de o faz la un anumit moment de timp.

Pentru fiecare dintre fazele magistralei, exist un set de faze permise care opot urma. De exemplu, faza de magistral liber poate fi urmat numai de faza dearbitraj sau de orice alt faz de magistral liber . O faz de date poate fi urmat deo comand , o stare, un mesaj sau de o faz de magistral liber . Semnalele decontrol direc ioneaz tranzi ia de la o faz la alta. De exemplu, semnalul de resetareinvoc faza de magistral liber , în timp ce semnalul de aten ie invoc faza de mesaj. Standardul SCSI specific opt faze distincte pentru magistrala SCSI :

1. Magistrala liber : aceast faz indic faptul c nici un dispozitiv SCSInu folose te magistrala i c magistrala este liber pentru orice alt opera ie SCSI.

2. Arbitrajul: aceast faz este precedat de faza de magistral liber ipermite unui dispozitiv SCSI s câ tige control asupra magistralei. În timpulacestei faze, toate dispozitivele care doresc s foloseasc magistrala î i pun ID-ulpe magistral (folosind semnalele de date). Semnalul cu cel mai mare ID câ tig .

3. Selec ia: aceast faz urmeaz fazei de arbitraj. Dispozitivul care acâ tigat faza anterioar folose te aceast etap pentru a selecta un alt dispozitiv cucare s comunice.

4. Reselec ia: aceast faz , op ional , este folosit de sisteme care permitechipamentelor periferice s se deconecteze i s se reconecteze (de) la magistralîn timpul opera iilor îndelungate.

5. Comanda: de-a lungul acestei faze, inta cere o comand de la ini iator.6. Datele: faza de date are loc când inta cere un transfer de date (de) la ini iator.7. Starea: aceast faz are loc când inta cere ca informa ia de stare s fie

trimis la ini iator.8. Mesajul: faza de mesaj are loc când inta cere transferul unui mesaj.

Mesajele sunt mici blocuri de date care transport informa ia sau cererea întreini iator i int . În aceast faz , pot fi trimise mesaje multiple.

Împreun , ultimele patru faze (comand , date, stare, mesaj) sunt cunoscuteca fazele de transfer al informa iei.

Page 32: ASC 4 Nivelul Fizic Subl

ARHITECTURA SISTEMELOR DE CALCUL202

Fig. 4.19. Fazele magistralei SCSI i tranzac iile permise.

Figura 4.19 arat leg tura dintre fazele magistralei SCSI.Varianta serial a magistralei SCSI se nume te Serial Attached SCSI (SAS),

care este un protocol de tip punct-la-punct (cu vitez de transfer de 6 Gb/s în 2009).

4.3.8. Magistrala local

Magistralele I/O prezentate au o latur comun : viteza relativ sc zut . Întimp ce viteza magistralei procesorului a crescut, magistrala I/O a cunoscut doarajust ri ale vitezei nominale, în principal prin cre terea l imii de band .

Solu iile bazate pe magistrala local nu înlocuiesc standardele existente, cisunt proiectate pentru a le îmbun i. De aceea, un sistem uzual este bazat pestandardele I/O i, în acela i timp, este dotat cu unul sau mai mul i conectori LocalBus. Un exemplu de magistral local la Intel 80486 este VLBus (VESA Local Bus).

4.3.8.1. Magistrala PCIMagistrala PCI (Peripheral Component Interconnect) este numit adesea i

magistral mezanin, oarece ea adaug un alt nivel configura iei de magistral .PCI ocole te magistrala standard I/O, folosind magistrala sistemului (pentru acre te viteza ceasului) i toate avantajele c ilor de date (vezi figura 4.20).

La magistrala PCI standard, informa iile se transfer la 33 MHz, utilizândtoat l imea cuvântului. L rgimea de band este de 132 MB/s. Când magistralaeste folosit cu o unitate CPU pe 64 bi i, l rgimea de band se dubleaz , aceastaînsemnând c datele se pot transfera la viteze de pân la 264 MB/s. În realitate,vitezele de transfer ale datelor vor fi în mod necesar mai mici, dar ele r mân încontinuare mult mai mari decât la orice alt variant anterioar .

Una dintre cauzele acestui transfer mai rapid este faptul c magistrala PCIlucreaz în paralel cu magistrala procesorului, f s o înlocuiasc . Unitatea CPUpoate procesa date în memoria cache extern , în timp ce magistrala PCI esteocupat cu transferarea informa iilor între alte elemente ale sistemului, ceea ceconstituie un avantaj major al magistralei PCI.

Page 33: ASC 4 Nivelul Fizic Subl

Structura unui calculator 203

Fig. 4.20. Schema de principiu a magistralei PCI.

Activitatea magistralei se manifest sub forma unor transferuri între unini iator (master) i o int (slave). Dup ce un master a ob inut controlulmagistralei, determin tipul transferului care va urma. În timpul fazei de adresareliniile C/BE informeaz despre tipul ciclului de magistral .

Ciclurile de magistral sunt:1. Acceptare întrerupere. Este un ciclu de citire conceput pentru dispozitivele

care func ioneaz cu rol de controler de întreruperi PCI. Liniile de adres nu suntfolosite în faza de adresare, iar în faza de date este indicat vectorul de întrerupere.

2. Ciclu special. Este folosit de ini iator pentru a emite mesaje c tre una saumai multe inte.

3. Citire I/O. Este un ciclu de transfer de date între ini iator i un dispozitivI/O. Fiecare dispozitiv I/ O are alocat un spa iu propriu de adresare.

4. Scriere I/O.5. Citire din memorie. Citirile din memorie se pot executa în salv , pe

blocuri, func ie de modul în care controlerul de memorie gestioneaz transferurileîntre memorie i cache. Se cite te o jum tate de linie de cache sau mai pu in, însalv fiind unul sau dou cicluri de citire.

6. Citire o linie din memorie. Se cite te mai mult de o jum tate de linie decache, dar mai pu in de trei linii, în salv fiind între 3 i 12 cicluri de citire.

7. Citire multipl din memorie. Se citesc mai mult de 3 linii de cache, însalv fiind mai mult de 12 cicluri de citire.

8. Scriere în memorie

Page 34: ASC 4 Nivelul Fizic Subl

ARHITECTURA SISTEMELOR DE CALCUL204

9. Scriere în memorie i invalidare. Scrierea se poate face, de asemenea, însalv . Se respect modul Write Back pentru scrierea din cache în memorie.

10. Citire configura ie. Fiecare dispozitiv PCI include un set de 256 deregistre interne, care se folosesc în faza de configurare. În acest tip de ciclu,dispozitivul master poate citi registrele de configurare.

11. Scriere configura ie. În acest tip de ciclu, dispozitivul master poatemodifica registrele de configurare.

12. Ciclu de adresare dual. Este folosit de ini iator pentru a ar ta c apare oadresare pe 64 de bi i.

Orice transfer de date pe magistrala PCI const într-o faz de adresare i unasau mai multe faze de date. În figura 4.21 este reprezentat un transfer de citire.

Fig. 4.21. Fazele unui transfer de citire pe magistrala PCI.

Linii implicate în acest transfer sunt:CLK – tactul de magistral PCI, 33MHz-133MHz;AD – liniile multiplexate pentru adrese i date;C/BE – liniile multiplexate pentru comenzi de magistral sau Byte Enable. În

timpul fazei de date, arat care din cei 4 octe i de date poart date semnificative;FRAME – semnalul generat de ini iatorul curent, pentru a indica startul unui

transfer. Este dezactivat când ini iatorul începe faza final de date.IRDY – ini iator preg tit, generat de masterul curent. La citire, indic faptul c

masterul este gata s accepte date, iar, la scriere, c pe AD sunt prezente date valide.TRDY – int preg tit , generat de modulul selectat ( int ). La citire, pe AD

sunt prezente date valide, iar la scriere indic faptul c inta este gata s accepte date.DEVSEL – semnalul activat de int când î i recunoa te adresa.Func ionarea este urm toarea:

Page 35: ASC 4 Nivelul Fizic Subl

Structura unui calculator 205

1. De îndat ce masterul are controlul magistralei, poate începe transferulactivând FRAME. Linia r mâne activ pân ini iatorul termin ultima faz de date.Ini iatorul pune adresa pe AD i comanda de citire pe liniile C/BE.

2. inta î i recunoa te adresa pe liniile AD.3. Ini iatorul cedeaz magistrala intei (începând cu tactul 3). Ini iatorul

schimb informa ia pe liniile C/BE, pentru a indica pe care dintre liniile AD se vortransmite datele de la int (1 pân la 4 octe i).

4. inta selectat activeaz DEVSEL, pentru a semnaliza c a recunoscutadresa, apoi pune datele pe liniile AD (primul octet) i activeaz TRDY.

5. inta are nevoie de timp pentru a preg ti urm torul octet de date.6. inta dezactiveaz TRDY, pentru a informa ini iatorul c pe urm torul

tact nu vor exista date valide. Ca urmare, ini iatorul nu va citi datele la începutultactului 5, ci la începutul tactului 6. S-a inserat astfel o stare de WAIT.

7. Dup tactul 6, inta pune pe magistral al treilea octet de date. Sepresupune de data aceasta c ini iatorul nu este gata s preia datele (are, deexemplu, buffer-ul plin). Ini iatorul dezactiveaz IRDY, ceea ce are ca efectmen inerea datelor de c tre int un tact suplimentar (datele nu se citesc laînceputul tactului 7, ci la începutul tactului 8).

8. Ini iatorul dezactiveaz semnalul FRAME i activeaz semnalul IRDY,pentru a semnala c este gata s finalizeze transferul.

9. Ini iatorul dezactiveaz IRDY, permi ând magistralei s treac în starea ini ial .inta a detectat dezactivarea semnalului FRAME i dezactiveaz TRDY i DEVSEL.

4.3.8.2. Magistrala AGPAGP (Accelerated Graphics Port) este o magistral dedicat comunic rii cu

display-ul, accesibil prin intermediul unui slot special, aflat pe placa de baz , în carese monteaz placa grafic . AGP a fost introdus pentru a degreva magistrala PCI decomunica ia cu display-ul i pentru a m ri banda transferurilor de date c tre acesta.

AGP a fost ap rut în 1997, odat cu procesorul Pentium II i cipsetul62440LX. Acest cipset, primul care a implementat controlul comunica iei pe AGP,intermedia transferul de date între procesorul Pentium II, aflat împreun cumemoria cache L2 în modulul SECC (Single Edge Contact Cartridge), memoriaprincipal , magistrala PCI i placa grafic montat în slotul AGP (vezi figura 4.22).

AGP d pl cii grafice posibilitatea de a accesa direct memoria principal ,printr-o procedur numit DIME (Direct Memory Execute). Cu DIME, adresareamemoriei se face în pipeline, mod care const în a lansa mai multe cereri pe durataunui acces la memorie (spre deosebire de PCI, care lanseaz o nou cerere numaicând cea anterioar a fost satisf cut ). Cererile formeaz o coad de a teptare,printr-un proces denumit SBA (Sideband Addressing).

Magistrala AGP are la baz standardul PCI versiunea 2.1. AGP are 32 de liniii lucreaz la 66 MHz, spre deosebire de PCI, a c rei frecven este de 33 MHz.

Banda primei magistrale AGP era de 264 MB/s (dubl fa de PCI). Ulterior, auap rut pl ci grafice care suportau transferul de date pe ambele fronturi ale semnaluluide ceas (2×-mode transfer) i banda s-a dublat ajungând la 528 MB/s (AGP 2×).

Page 36: ASC 4 Nivelul Fizic Subl

ARHITECTURA SISTEMELOR DE CALCUL206

Fig. 4.22. Configura ia magistralelor la PC-urile cu procesor Pentium II.

Versiunea AGP 2.0, cunoscut i ca AGP 4×, define te un nou mod detransfer – 4x-mode transfer – constând în patru transferuri de date pe o perioad deceas, banda fiind de 1,066 GB/s. O nou versiune, lansat în 2001, AGP 8×,dubleaz înc o dat banda de transfer, care dep te, astfel, valoarea de 2 GB/s.

4.3.9. Magistrala serial

4.3.9.1. Magistrala USBAcest tip de magistral a ap rut în toamna anului 1995. La crearea lui au

contribuit mai multe firme de renume, cum ar fi DEC, Compaq, IBM, NEC,Northern Telecom. Odat cu apari ia USB, dispare multitudinea de cabluri iconectori necesar conect rii diverselor periferice: tastatur , mouse, imprimant ,joystick, scaner sau modem extern. În partea din spate a calculatorului exist unsingur conector de la care pornesc datele spre tastatur , periferice i monitor.Aceste aparate func ioneaz ca distribuitori (hub) pentru alte aparate. De asemenea,calculatorul preia rolul de gazd (host), gestionând diversele comunica ii.Magistrala USB este dirijat exclusiv de calculatorul gazd .

Practic, la aceast magistral poate fi conectat orice periferic echipat cu uncontroler USB, dar, datorit ratei de transfer de 12 Mb/s, sunt vizate în primul rândechipamentele audio-video, telefonia digital , modemurile, tastaturile, tableteledigitizoare, unit ile CD i DVD, unit ile HDD externe etc.

Dup cum s-a ar tat în paragraful 3.4.4.1, un host USB comunic cudispozitivele conectate prin intermediul unor canale logice (pipes), care au ni teterminale logice pe dispozitive numite endpoints.

Page 37: ASC 4 Nivelul Fizic Subl

Structura unui calculator 207

Pipe-urile se împart în patru categorii, dup tipurile de transfer folosite:• modul control – folosit, de obicei, pentru comenzi simple c tre

dispozitive, primind ca r spuns starea dispozitivului periferic la unmoment dat (de exemplu, pipe-urile de management 0);

• modul izocron – garanteaz o vitez (nu neap rat cea maxim ), dar cuposibilit i de a pierde date (de exemplu, aplica ii audio-video în timp real);

• modul întrerupere – pentru periferice care au nevoie de r spuns rapid(cu laten e limitate) (de exemplu, mouse, tastatur etc.);

• modul bulk – transferuri mari i lungi de date, folosind toat bandaliber , f a garanta banda (de exemplu, transferuri de fi iere).

Când un dispozitiv periferic este activ, ata at host-ului, acesta prime te oadres de 7 bi i de la host. Host-ul interogheaz dispozitivele pentru trafic, astfelîncât nici un dispozitiv nu poate transfera date pe magistral f a face o cerere

tre host. Întreruperile efectuate asupra endpoint-urilor corespunz toare nu întreruppractic traficul de date, ci sunt programate doar pentru a fi interogate mai des de

tre host, primind o prioritate mai mare.Accesarea unui endpoint se face printr-o configura ie ierarhic . Un dispozitiv

conectat la magistral are un descriptor de dispozitiv (device descriptor), care, larândul s u, are mai mul i descriptori de configura ie (configuration descriptors).Configura iile corespund, de obicei, cu starea la un moment dat (de exemplu, activsau în mod putere sc zut – low power). Fiecare descriptor de configura ie are, larândul s u, un descriptor de interfa (interface descriptor), care descrie diferitefunc ionalit i ale dispozitivului, în func ie de tipul acestuia (de exemplu, o camervideo poate avea descriptor de interfa video i descriptor de interfa audio).

Structura ierarhic este prezentat în figura 4.23.

Fig. 4.23. Structura ierarhic a descriptorilor USB.

Page 38: ASC 4 Nivelul Fizic Subl

ARHITECTURA SISTEMELOR DE CALCUL208

Fiecare descriptor de interfa are ni te set ri implicite i este posibil s aibset ri alternative de interfa (alternate interface settings), care, la rândul lor, audescriptori de enpoint-uri (endpoint descriptors). Un endpoint poate fi totu i folositpentru mai multe interfe e sau set ri alternative de interfe e.

Hub-urile sunt elemente cheie în arhitectura plug’n’play a USB, u urândconectivitatea din punct de vedere al utilizatorului i asigurând o robuste e maimare. Punctele de conexiune ale hub-urilor se numesc porturi. Un hub are un portupstream i mai multe porturi downstream (vezi figura 4.24). Portul upstreamconecteaz hub-ul cu gazda (host) sau cu un hub mai apropiat de gazd . Portuldownstream conecteaz hub-ul cu alt hub sau cu un dispozitiv func ional. Hub-ulpoate detecta conectarea i deconectarea dispozitivelor la fiecare port downstreami permite alimentarea cu energie a dispozitivelor din aval.

Fig. 4.24. Structura unui hub USB.

Un hub USB 2. 0 se compune din trei por iuni:• controlerul hub-ului: este un comutator controlat de protocol între portul

upstream i porturile downstream, care are suport hardware pentru reseti semnalizare suspend/resume;

• repetorul hub;• translatorul de tranzac ii: asigur mecanismul de vitez medie/mic în

aval de hub, în timp ce în amonte transmisia se face la vitez mare.Calculatorul (host) i aparatul (hub) sunt împ ite în niveluri (layer)

distincte. S ge ile verticale indic starea actual de comunica ie la gazd . Interfa acorespunz toare a aparatului are o implementare specific . Toate comunica iiledintre gazd i aparat au loc prin cablul fizic USB. Exist interfe e gazd -aparat lafiecare nivel orizontal. Comunica ia între clientul de in tor al software-ului ifunc iile provenite de la aparat sunt reglementate de un contract bazat pe nevoiaaplica iei curente de a folosi aparatul i posibilit ile oferite. Aceast interac iuneclient-func ie creeaz cereri pentru toate nivelurile i interfe ele lor.

Nivelul gazdei pune la dispozi ie urm toarele posibilit i:• detectarea ata rii sau deconect rii unui aparat USB;• managementul fluxului standard de control între gazd i aparat;• managementul fluxului de date între gazd i aparat;• colectarea informa iei statistice de stare a activit ii;• controlul electric al interfe elor între controlerul gazd i aparatul USB.

Page 39: ASC 4 Nivelul Fizic Subl

Structura unui calculator 209

Fig. 4.25. Arhitectura stratificat a comunica iei USB.

Fluxul de date de baz i rela iile dintre modulele USB sunt prezentate înfigura 4.25, iar comunica ia între calculator (host) i aparate (hub) se face pe bazaunui protocol descris în figura 4.26.

Câmp desincronizare

(8 bi i)

Identificator alpachetului

(8 bi i)

Date(0 … 1032 octe i)

Controlerori CRC(16 bi i)

Fig. 4.26. Structura pachetului de date.

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 10miliarde. Dup terminarea transferului de date, are loc confirmarea transmisieidatelor i verificarea corectitudinii transmisiei lor (handshake).

Datorit modulelor soft plug’n’play, la conectarea fizic a unui periferic lacomputer, acesta este autodetectat, iar datorit unor registre interne ale perifericului(care furnizeaz sistemului de operare informa ia necesar ) sunt înc rcate exactdriver-ele necesare func ion rii acestuia, care poate fi i dezinstalat când sehot 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.

Page 40: ASC 4 Nivelul Fizic Subl

ARHITECTURA SISTEMELOR DE CALCUL210

4.3.9.2. Magistrala FireWire (standardul IEEE 1394)Aceast magistral a fost creat în 1986 de c tre firma Apple i a fost

adoptat ca standard în 1994. În prezent ea este sprijinit de numeroase firme cumar fi Adaptec, AMD, Cirrus Logic, Compaq, HP, Hitachi, Matsushita, IBM,Maxtor, Microsoft, NEC, Philips, Sun, Sony, Texas Instruments.

Magistrala FireWire este de fapt o interfa serial de mare vitez : ea permiterate de transfer de 400 Mb/s … 1 Gb/s. Este v zut ca magistrala viitorului, pentruconectarea tuturor echipamentelor electrocasnice: TV, DVD, scanner, camer web, PC.

Acest tip de magistral a ap rut datorit cerin elor tot mai mari în ceea ceprive te calitatea transmisiei audio-video, dar i din necesitatea interconect riituturor echipamentelor electrocasnice. Cu ajutorul unui suport software adecvat sepoate crea un nou tip de aplica ii multimedia: conferin e de calitate full-motion,jocuri i multimedia de calitate cinematografic , video-mail, editare video etc.

Toate transmisiile de date FireWire sunt de tip pachet i pot fi clasificate îndou categorii: asincrone i isocrone, magistrala fiind de tip tranzac ional.

Transmisiile asincrone sunt garantate la recep ie i au nevoie de un semnalde confirmare de la receptor. Ele sunt transmisiuni unipunctuale (unicast).

Transmisiile isocrone sunt garantate în timp, cu o l rgime de band specific ,rezervat pentru ele în magistrala serial . Pân la 80% din banda magistralei poate fialocat pentru transmisiile isocrone. L rgimea de band este alocat în intervale de125µs, numite cicluri. Transmisiile isocrone au o natur multipunctual (multicast),fiind adresate unuia sau mai multor noduri, pe baza unui num r de canal. FireWiresuport i un alt tip de transmisii, numite fluxuri asincrone (asyncronous streaming).Acestea pot fi unipunctuale sau multipunctuale. Pachetele de date FireWire audimensiune variabil . Dimensiunea maxim a înc rc turii de date depinde de tipulde transmisiune i l rgimea de band a magistralei FireWire (100÷1000 Mb/s).

Figurile 4.27 i 4.28 reprezint formate de pachete FireWire isocrone i,respectiv, asincrone. Fluxurile asincrone i pachetele isocrone au acela i format.

Fig. 4.27. Formatul pachetelor isocrone i a fluxurilor asincrone FireWire.

Page 41: ASC 4 Nivelul Fizic Subl

Structura unui calculator 211

Semnifica ia nota iilor din figura 4.27 este urm toarea:tag – formatul datelor (specific protocolului);channel – adresa de canal;tcode – codul tranzac iei (asincron, isocron, pachet de date, de control etc.);sy – codul de sincronizare (specific aplica iei).

Fig. 4.28. Formatul pachetelor asincrone FireWire.

Semnifica ia nota iilor din figura 4.28 este urm toarea:destination id – include 6 bi i pentru ID-ul nodului (63 de noduri) i 10 bi i

pentru ID-ul magistralei (1024 magistrale);tcode – tipul tranzac iei;pri – prioritate (câmp neutilizat);destination offset – loca ia de adres din interiorul nodului int (target);celelalte câmpuri depind de tipul protocolului.Arhitectura FireWire este constituit ca o stiv cu un protocol de patru

nivele. Nivelul fizic determin arbitrajul magistralei, define te semnalele electricepentru transmisia de date i interfa a mecanic pentru cabluri i conectori. Nivelulde conexiuni asigur adresa i decodificarea num rului de canal, precum igenerarea CRC-ului i verificarea pachetelor de date transmise i recep ionate.Nivelul de tranzac ii asigur servicii de interogare-r spuns pentru transmisiileasincrone. Transmisiile isocrone opereaz independent fa a de acest nivel. Nivelulde gestiune a magistralei asigur suportul pentru diferite activit i de gestiune iconfigurare a magistralei.

Page 42: ASC 4 Nivelul Fizic Subl

ARHITECTURA SISTEMELOR DE CALCUL212

FireWire necesit trei noduri primare pentru gestionarea magistralei la ooperare normal . Acestea sunt: cycle master, IRM (Isochonous Resource Manager)i BM (Bus Manager), conform figurii 4.29.

Fig. 4.29. Structura stratificat a protocolului FireWire.

Cycle master genereaz i transmite pachete de ini ializare ciclice la fiecare125 µs. Un pachet de ini ializare ciclic reprezint începutul intervalului periodic de125 µs. Nodul r cin joac rolul de cycle master.

IRM gestioneaz l rgimea de band a magistralei de date seriale isocrone ialoc numerele de canale generate multinodal.

BM gestioneaz distribu ia de putere pe cabluri i afi eaz harta topologici diagrama de vitez pentru magistrala serial . Diagrama de vitez este necesar

deoarece FireWire poate suporta noduri/cabluri de l rgimi de band diferite într-osingur re ea. În general, toate nodurile sunt capabile s efectueze activit ile degestionare a magistralei. Totu i, nodurile opera ionale de gestionare a magistraleisunt cele alese în etapa configur rii magistralei.

FireWire utilizeaz un mecanism de arbitraj cerere/acceptare pentrucontrolul accesului în re eaua shared-medium. O schem de arbitraj simplfunc ioneaz dup cum urmeaz :

• nodurile care doresc s transmit un pachet cer permisiunea de lamanagerul de magistral ;

• managerul selecteaz cererea optim , bazat pe anumite criterii, i emiteun semnal de acceptare pentru nodul corespunz tor;

• numai nodul acceptat î i transmite pachetul de date, celelalte noduricontinuând s cear permisiunea pân când o primesc de la manager.

Page 43: ASC 4 Nivelul Fizic Subl

Structura unui calculator 213

4.3.9.3. Magistrala I2CMagistrala I2C (Inter-Integrated Circuits) a fost dezvoltat de firma Philips

pentru comunica ia între diferite microcontrolere i controlere I/O. Este omagistral bidirec ional simpl , care utilizeaz dou fire, unul pentru dateleseriale, SDA (Serial Data), i unul pentru ceasul serial, SCL (Serial Clock), dupcum arat în figura 4.30. Exist un mare num r de circuite integrate compatibile cumagistrala I2C, care a devenit un standard industrial pentru magistralele de control.

Fig. 4.30. Circuite conectate printr-o magistral I2C.

Fiecare dispozitiv conectat la magistral este recunoscut printr-o adresunic i poate func iona fie ca receptor (de exemplu, un afi aj cu cristale lichide),fie ca transmi tor i receptor (de exemplu, o memorie). Transmi toarele ireceptoarele pot func iona în modul master sau în modul slave, dup cum acesteapot ini ia un transfer de date sau sunt doar adresate. Un dispozitiv master poatetransmite/recep iona semnale la sau de la un dispozitiv slave sau poate controlatransferurile între dou dispozitive slave, dintre care unul este transmi tor, iarcel lalt este receptor. Pot exista mai multe dispozitive master pe magistral . Încazul în care mai multe dispozitive master încearc simultan s controlezemagistrala, o procedur de arbitraj decide care din dispozitive este prioritar.

În sistemele cu mai multe dispozitive master, în cazul în care mai multeasemenea dispozitive doresc accesul la magistral , are loc o procedur de arbitraj.Dac un dispozitiv master transmite un semnal 1 logic pe linia de date, iar un altdispozitiv master transmite un semnal 0 logic, acesta din urm va preluamagistrala, iar primul dispozitiv master va elibera magistrala. Acest arbitraj poatecontinua pe durata mai multor bi i. Pentru arbitraj, se utilizeaz bi ii de adres i ceide date.

Mai recent, în versiunea 2.1 a specifica iilor magistralei, a fost inclusfacilitatea de deplasare a nivelelor de tensiune (level shifting), care permiteconectarea la magistral a dispozitivelor care func ioneaz cu tensiuni dealimentare diferite, de exemplu, la 5 V i 3,3 V. De asemenea, specifica iile au fostextinse pentru dispozitivele care func ioneaz la tensiuni de sub 2,7 V. A fostad ugat un mod de transfer de vitez ridicat (high speed), care asigur rate detransfer de pân la 3,4 Mbit/s i permite conectarea unor memorii EEPROM. Cuajutorul unei pun i (bridge), se asigur comunica ia bidirec ional cu dispozitivelecare utilizeaz modul de transfer rapid sau cel standard.

Page 44: ASC 4 Nivelul Fizic Subl

ARHITECTURA SISTEMELOR DE CALCUL214

4.3.9.4. Magistrala Fibre ChannelCre terea performan elor sta iilor de lucru, a procesoarelor i a perifericelor,

ca i cre terea ponderii arhitecturilor distribuite de tip client/server, au ridicatcerin ele pentru aplica iile cu rate de transfer ridicate. Interconexiunile dintre acestesisteme i dispozitivele I/O necesit un nou nivel al performan elor în ceea ceprive te fiabilitatea, viteza i distan a. Fibre Channel reprezint o tehnologie deinterconectare cu fiabilitate ridicat , care permite comunica ii concurente între sta ii delucru, servere, sisteme de stocare a datelor i alte periferice care utilizeaz protocoaleca SCSI, IP, HPPI-FP sau audio-video. Aceast tehnologie asigur interconectareapentru topologii multiple cu o rat de transfer total scalabil pân la 1 Tbit/s.

Fibre Channel reprezint un standard pentru un canal de comunica ie caredispune de facilit i de re ea i asigur astfel conectivitatea i distan a necesar ,permi ând utilizarea diferitelor protocoale de comunica ie. De asemenea, FibreChannel are caracteristicile unui canal de comunica ie tradi ional, cu avantajelesimplit ii, a performan elor repetabile i a furniz rii garantate a datelor.

În termenii arhitecturii Fibre Channel, comutatorul care leag dispozitivele esteo re ea de tip fabric. Leg tura este reprezentat de dou fibre unidirec ionaletransmi ând în sensuri opuse fa de emi torul i receptorul asociate acestora. Fiecarefibr este ata at unui emi tor al unui port la unul dintre terminale i unui receptor alaltui port la cel lalt terminal. Dac re eaua de tip fabric este prezent în configura ie,fibra poate fi ata at unui port al unui nod (N_Port) i unui port al re elei (F_Port).

Deoarece sistemul de canale se bazeaz pe porturi comunicând între ele i cure eaua de tip fabric, nu este esen ial dac re eaua este un comutator de circuit, unhub activ sau o bucl . Topologia poate fi selectat în func ie de cerin ele deperforman ale sistemului sau de op iunile de pachete. Topologiile posibile alemagistralei Fibre Channel (vezi figura 4.31) sunt cele de tip punct-la-punct (jos),crosspoint cu comutare (stânga) sau bucl arbitrat (dreapta).

Fig. 4.31. Topologii Fibre Channel.

Page 45: ASC 4 Nivelul Fizic Subl

Structura unui calculator 215

Arhitectura Fibre Channel reprezint , a adar, integrarea unei re ele cu ointerconexiune inteligent între dispozitive. Magistrala Fibre Channel opereaz la omare varietate de viteze (133 Mbit/s, 266 Mbit/s, 530 Mbit/s, 1 Gbit/s) i pe treitipuri de medii electrice i optice. Distan ele de transmisiune variaz în func ie decombina iile între vitez i mediu. Mediul optic de fibre unimodale utilizând sursede lumin laser cu lungime de und mare ofer cea mai înalt performan (distan amaxim de 10 km la 1 Gbit/s).

4.3.9.5. Magistrala InfiniBandArhitectura InfiniBand rezolv limit rile de l rgime de band i suprasarcin

ale magistralei PCI prin trecerea de la tradi ionala arhitectur partajat a magistraleila o arhitectur cu comutare de re ea de tip fabric (switched fabric architecture).Figura 4.32 ilustreaz cea mai simpl configura ie a unui sistem InfiniBand, în caredou sau mai multe noduri sunt conectate prin re eaua InfiniBand Fabric. Un nodreprezint fie un dispozitiv gazd (server), fie un dispozitiv I/O (subsistem RAID).Re eaua InfiniBand Fabric poate consta dintr-un singur comutator (în cel maisimplu caz) sau dintr-un set de comutatoare interconectate i router-e.

Fig. 4.32. Arhitectura InfiniBand Fabric.

Fiecare conexiune dintre noduri, comutatoare i router-e este o leg turserial , punct-la-punct. Aceast deosebire esen ial aduce anumite beneficii:

1. Fiind o conexiune serial , necesit doar patru leg turi, fa deconexiunea deosebit de complex a magistralei PCI.

2. Natura punct-la-punct a conexiunii ofer capacitatea maxim a leg turiiîntre dou puncte, fiind dedicat celor dou puncte finale. Astfel, se eliminconcuren a la magistral , precum i întârzierea rezultat în condi iile uneisuprasarcini în arhitectura magistralei partajate.

3. Canalul InfiniBand este proiectat pentru conexiuni între gazde idispozitive I/O în cadrul unui centru de date (Data Centre). Datorit lungimii binedefinite i relativ scurte a conexiunilor, poate fi atins o l rgime de band mult maimare decât în cazurile în care este nevoie de lungimi mult mai mari.

Specifica iile InfiniBand definesc l rgimea de band brut a conexiunii debaz 1× la 2,5 Gb/s i specific dou l rgimi de band adi ionale, referite ca 4× i12×, ca multipli ai ratei pentru leg tura de baz .

Page 46: ASC 4 Nivelul Fizic Subl

ARHITECTURA SISTEMELOR DE CALCUL216

4.3.9.6. Magistrala PCI Express

Necesitatea schimb rii magistralei a ap rut ca o cerin fireasc , având învedere c vechiul PCI, cu limita sa de vitez de transfer de 133 MB/s, nu mai puteaface fa necesit ilor actuale ale calculatoarelor. Chiar i portul AGP 8×, cu vitezasa teoretic maxim de 2 GB/s nu face fa noilor cipuri video ap rute. În acestecondi ii, o grupare a liderilor în domeniu, numit PCI-SIG (Intel, NVidia, Dell etc.)au lucrat la dezvoltarea magistralei PCI Express, cu scopul de a înlocui PCI i AGP.

Tehnologia din în spatele magistralei PCI Express nu este complet nou .Cunoscut sub numele Arapahoe sau 3GIO, a fost ratificat ca standard în aprilie2002. Aceast magistral a fost gândit pentru a prelua munca pentru urm torii 10 ani,deci nu este vorba despre un standard de tranzi ie. Din punct de vedere tehnic, PCIExpress este o magistral serial bidirec ional (cu versiunile 1.0, 2.0 i 3.0), caretransfer informa iile sub form de pachete, aproape la fel cu o conexiune Ethernet.

Arhitectura PCI ExpressFiecare dintre cele dou conexiuni unidirec ionale în parte poate transporta

2,5 Gbit/s. Un semnal de tact poate fi integrat în transferuri, pentru a regla viteza detransfer. Arhitectura acestei genera ii de magistral se bazeaz pe straturi (layer),ca i cele utilizate de protocolului TCP/IP (vezi figura 4.33).

Fig. 4.33. Arhitectura PCI Express.

Nivelul fizic define te specifica ii electrice, mecanice, procedurale ifunc ionale pentru activarea, men inerea i dezactivarea leg turilor fizice întresisteme i este alc tuit dintr-o interfa serial de mare vitez , numit Low-VoltageDifferential Signaling (LVDS), pentru a transfera 2,5 GHz. Cuprinde componentelefizice necesare pentru a configura i men ine conexiunile. Include mecanismepentru preg tirea conexiunii, citirea semnalelor, codarea 8b/10b, crearea de frame-uri& pachete i transmiterea datelor pe conexiune.

Page 47: ASC 4 Nivelul Fizic Subl

Structura unui calculator 217

Nivelul leg turilor de date este responsabil cu transmiterea corect adatelor printr-o leg tur fizic existent , între dou puncte conectate direct prinaceast leg tur fizic . Nivelul fizic nu poate realiza acest lucru, deoarece aici nuse opereaz cu de date, ci numai cu bi i i, mai exact, cu reprezentarea fizic aacestora (niveluri de tensiune, intensitate a luminii etc.). Nivelul leg turilor de datese ocup cu adresarea fizic , topologia re elei, accesul la re ea, detec ia &anun area erorilor (CRC pe 32 de bi i) i controlul fluxului fizic (flow control);

Nivelul transport este responsabil cu crearea pachetelor care vor fiexpediate i cu citirea pachetelor primite. Se ocup cu controlul fluxului de date icu managementul puterii consumate. Acest nivel ofer un serviciu de transport dedate izoleaz nivelurile superioare de orice specificit i legate de modul în care esteexecutat transportul datelor. Are un caracter redundant, realizat de ECRC (End-to-end Cycling Redundancy Check), mecanism pe 32 bi i cu rolul de a asiguratransportul între dou sta ii separate de una sau mai multe entit i. De i toatetranzac iile PCI Express sunt separate, unele nu necesit r spuns (avantaj).

Nivelul software (aplica ie) este situat cel mai aproape de utilizator, oferindservicii de re ea aplica iilor utilizator. Nivelul aplica ie stabile te disponibilitateaunui calculator cu care se dore te ini ierea unei conexiuni, stabile te procedurilecare vor fi urmate în cazul unor erori i verific integritatea datelor.

PCI Express vs PCIrgimea de band disponibil între dou puncte nu este partajat , astfel

încât, atât la un singur periferic PCI Express cât i la trei, fiecare are la dispozi ieaceea i l rgime de band . La nivelul cipsetului, magistrala PCI Express estegestionat de un switch care gestioneaz conexiunile punct-la-punct, înainte de ainterac iona cu restul sistemului (vezi figura 4.34).

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 iexclusiv 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. Osingur cale este capabil s transmit 250 MB/s în fiecare direc ie simultan (500MB/s pentru ambele direc ii). PCI Express este alc tuit din dou c i, a adar, poatetransmite 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.

Page 48: ASC 4 Nivelul Fizic Subl

ARHITECTURA SISTEMELOR DE CALCUL218

Din punct de vedere al compatibilit ii, produc torii au gândit PCI Expresspentru a r mâne compatibil din punct de vedere software cu toate sistemele deoperare i programele actuale. Cu alte cuvinte, nu este nevoie de un updatesoftware pentru a putea beneficia de avantajele aduse de PCI Express. Un alt lucruimportant este c PCI Express r mâne compatibil cu pl cile PCI actuale nu ofersuport 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 ceasuli 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.

Fig. 4.35. Compara ie a l rgimilor de band .

Exemple de arhitecturi PCI ExpressNenum ra i factori duc la alegerea cardurilor PCI Express în func ie de

necesit ile clientului, serverului sau a platformei portabile:• carduri standard i cu profil mic: desktop, sta ii de lucru i servere;• minicarduri: calculatoare portabile;• ExpressCard: calculatoare portabile i desktop;• Server I/O Module (SIOM).Figura 4.36 exemplific implementarea PCI Express într-un sistem client. Ini ial,

conexiunea PCI Express ×16 înlocuie te slotul AGP dintre subsistemele grafice inorthbridge. O variant de PCI Express poate înlocui conexiunea dintre northbridge isouthbridge, rezolvând incompatibilit ile dintre componente i nothbridge.

Figura 4.37 exemplific structura unui sistem portabil. La fel ca la sistemeledesktop, PCI Express înlocuie te placa AGP, fiind o alternativ la conexiuneadintre nothbridge i southbridge. Magistrala PCI dintre northbridge i sta ia delucru poate migra, de asemenea, spre PCI Express. Un slot ExpressCard ×1 carefolose te o conexiune USB 2.0 poate înlocui cardul PC.

Figura 4.38 exemplific modul în care poate fi implementat PCI Expressîntr-o arhitectur de server dual-core. PCI Express face leg tura dintre componentei sloturi plasate direct pe northbridge.

Page 49: ASC 4 Nivelul Fizic Subl

Structura unui calculator 219

Fig. 4.36. Exemplu de arhitectur desktop PCI Express.

Fig. 4.37. Exemplu de arhitectur de sistem portabil PCI Express.

Aceast abordare are urm toarele avantaje:• vitez mult mai mare pentru genera iile viitoare (10-Gps Ethernet);• costuri mai mici – mai multe sloturi i componente se pot conecta la

cipul sistemului;• laten mic – laten a transmisiei dintre componente, CPU i memorie

poate fi redus , eliminând puntea PCI-X.

Page 50: ASC 4 Nivelul Fizic Subl

ARHITECTURA SISTEMELOR DE CALCUL220

Fig. 4.38. Exemplu de arhitectur server PCI Express.

4.3.10. Compara ii între magistrale

Figura 4.39 este o sintez de tip roadmap i arat evolu ia în timp a vitezeimagistralelor, exprimat prin valoarea ratei de transfer (benzii), iar tabelul 4.2prezint comparativ caracteristicile, parametrii i performan ele câtorva dintre celemai r spândite standarde de magistrale seriale din ultimii ani.

Fig. 4.39. Evolu ia ratei de transfer a magistralelor.

Page 51: ASC 4 Nivelul Fizic Subl

Structura unui calculator 221

Tabelul 4.2Compara ie între magistrale

Nume

rgimede bandefectiv(Mb/s)

Vitezde

transfer(MB/s)

Lungimemaximde cablu

(m)

Putere/tensiunenecesare(W/V)

Num rde echipamente

per canal

SAS 3.000 375 8 - 4

eSATA 3.000 300 2 - 1 (15 cu multiplicator de port)

SATA 300 3.000 300 1 - 1 (15 cu multiplicator de port)

SATA 150 1.500 150 1 - 1

PATA 133 1.064 133 0,46 - 2

FireWire3200 3.144 393 100 15/12–25 63 (cu hub)

FireWire 800 786 98,25 100 15/12–25 63 (cu hub)

FireWire 400 393 49,13 4,5 15/12–25 63 (cu hub)

USB 2.0 480 60 5 2,5/5 127 (cu hub)

UltraSCSI 320 2.560 320 12 - 16

Fiber Channelcablu cupru 4.000 400 12 - 126 (16.777.216 cu switch-uri)

Fiber Channelfibr optic 10.520 2.000 2–50.000 - 126 (16.777.216 cu switch-uri)

Infiniband12× Quad-rate 120.000 12.000 5 - 1 (punct-la-punct)