Calculatoare
Tipuri de magistraleTIPURI DE MAGISTRALECum se transmit informatiile in interiorul calculatorului? In interiorul calculatorului informatia se transmite codificat, in format binar. Deci, in interiorul calculatorului informatia circula sub forma unui sir de biti. Singura componenta hardware a calculatorului care face diferentiere intre programe si date este procesorul. Pentru celelalte componente, informatia este un sir de biti fara nici o semnificatie informationala Intre cele trei mari componente hardware ale calculatorului, informatia circula pe magistrala (bus). Magistrala se defineste ca multimea conductoarelor folosite in comun de mai multe unitati functionale pentru realizarea unor sarcini pe care informatia circula sub forma de impulsuri electrice cu doua niveluri de tensiune carora le corespunde cele doua cifre binare 0 si 1. Dupa natura informatiilor care circula, magistralele pot fi de adrese, de date sau de semnale de control, dupa cum semnalele respective reprezinta adrese, date sau comenzi si informatii despre starea unitatilor interconectate. Liniile folosite pentru transferul datelor intre microprocesor, memorie si dispozitivele de intrare/iesire formeaza magistrala de date. Aceasta magistrala este bidirectionala - pe ea intra date atunci cand se efectuaza o citire din memorie sau de la dispozitivele de intrare/iesire si ies date la efectuarea unei scrieri. Magistrala de adrese este unidirectionala - adresele ies din microprocesor pentru a putea fi transmise catre circuitele de memorie si catre cele de I/E. Prin magistrala de adrese, microprocesorul coordoneaza functionarea microcalculatorului. Magistrala de comenzi este reuniunea unor semnale individuale de I/E din microprocesor, avand fiecare un rol aparte. Aceste semnale se pot clasifica astfel: 1. Semnale de control - prin care microprocesorul coordoneaza functionarea dispozitivelor de pe magistrala (exemple: READ, WRITE); 2. Semnale de stare - prin care microprocesorul primeste reactii de la dispozitivele situate pe magistrala (ex: cerere de intrerupere, cerere de suspendare a controlului magistralei). Patru tipuri de activitati se pot desfasura pe o magistrala si anume: 1. Transferul datelor - se efectueaza intre registri UC si o locatie de memorie sau un registru de interfata. Pentru realizarea unui transfer, avem nevoie de adrese prin care se selecteaza locatia de memorie sau registrul de interfata, de o comenda care va specifica tipul operatiei (scriere/citire memorie, scriere/citire dispozitiv periferic) si de datele din memorie sau de la dispozitivul selectat. 2. Operatia de suspendare a controlului magistralei - se foloseste in cazul in care exista mai multe module care vor sa ocupe magistrala. Cand microprocesorul care ocupa magistrala isi termina operatia, el poate sa-si suspende controlul, astfel incat acesta sa fie preluat de un alt microprocesor care doreste sa acceseze magistrala. Operatia poate fi executata la cerere sau la momente de timp bine definite. 3. Sincronizarea microprocesorului cu dispozitivele lente - aceasta operatie sesuprapune peste operatia de transfer a datelor, in situatia in care dispozitivul selectat prin comanda este mai lent. In acest caz, la nivelul dispozitivului de comanda se trece microprocesorul in asteptarea unui semnal specific catre periferic. 4. Operatia de intrerupere - se foloseste in cazul in care se doreste oprirea fluxului de instructiuni in curs de executie si inlocuirea lui cu alt flux. Intreruperea poate fi cauzata de schimbarea unui dispozitiv periferic sau de un eveniment extern/intern neasteptat. La aparitia unei cereri de intrerupere, microprocesorul termina instructiunea curenta, salveaza adresa de revenire, dupa care trece la o secventa de tratare a cererii de intrerupere. Dupa sensul de circulatie a informatiilor, magistralele sunt bidirectionale si unidirectionale. Magistralele se mai pot clasifica in magistrale dedicate, respectiv nededicate. Magistrala dedicata este in permanenta asignata unei singure functii sau unui set de dispozitive fizice. Magistrala nededicata permite accesul mai multor functii sau al mai multor dispozitive fizice. Tehnicile de control al magistralei (tehnici de arbitrare) sunt folosite in cazul in care exista cereri simultane de acces la magistrala. Pentru a transmite informatia corecta pe magistrala este necesar sa se respecte urmatoarea regula - la un moment dat accesul pe magistrala il poate avea doar un singur emitator, numarul receptoarelor fiind teoretic nelimitat. Prin activitatea de arbitraj se inregistreaza cererile de acces la magistrala ale emitatorului si eventual se acorda magistrala solicitatorului. Arbitarea poate fi realizata centralizat, caz in care circuitele necesare efectuarii controlului se afla comasate intr-un singur modul, sau distribuit, caz in care fiecare modul cuplat pe magistrala contine un circuit cu logica de arbitraj necesara. Pentru fiecare dintre aceste tipuri de tehnici exista trei metode de arbitrare: inlantuire seriala, interogare, cereri independente. In cazul in magistrala a fost castigata de un dispozitiv, trebuie stabilit dialogul intre sursa si destinatie. Pe baza metodei de dialog se realizeaza transferul propriu-zis, care poate fi sincron (la cuante de timp fixe, generate de un generator de tact central) sau asincron. Sa trecem acum in revista componentele periferiei calculatorului. Dupa cum s-a vazut ea se imparte in: Dispozitive de memorare sau memoria externa Dispozitive de I/E. 1. MAGISTRALA SERIALACum functioneaza magistrala universala seriala?In interiorul calculatorului personal, un controler de magistrala universala seriala (universal serial bus, USB)- un set specializat de cipuri si conexiuni- actioneaza ca o interfata intre programe si componentele hardware. Aplicatiile, sistemul de operare si driverele dispozitivelor- care furnizeaza detalii despre modul in care functioneaza anumite dispozitive hardware- trimit comenzi si date hub-ului gazda USB, localizat pe controler. De la hub-ul gazda pleaca conectori speciali sau porturi USB. Cabluri pereche cu cate patru fire se conecteaza in porturi. Un cablu se poate atasa la un alt hub, singurul scop fiind acela de a furniza mai multe porturi la care sunt atasate dispozitivele USB – un fel de cordon digital de extensie. Sau un cablu poate conduce direct la un dispozitiv USB, cum ar fi un monitor. USB suporta conexiuni pentru aproape orice tip de dispozitive periferice externe, cum ar fi monitor, tastatura, mouse, modem, boxe, microfon, telefon, scaner si imprimanta. Doua din cele patru fire din cablul USB sunt folosite pentru a furniza putere electrica dispozitivelor periferice, eliminand aglomerarea de surse de alimentare. Celelalte doua linii, numite D+ si D-, sunt folosite pentru transimiterea de date si comenzi. O tensiune inalta pe D+, dar nu si pe D-, inseamna un bit 1. Otensiune inalta pe D- dar nu si pe D+ inseamna un bit 0. Orice dispozitiv USB poate include, de asemenea, un hub, astfel incat un monitor, de exemplu, furnizeaza porturi in care pot fi conectate boxe multimedia, un microfon si o tastatura. Aceste dispozitive pot, la randul lor, sa furnizeze porturi pentru alte componente hardware USB. De exemplu, un mouse si un stilou digital se pot atasa la o tastatura, care este atasata la monitor, care este atasat la hub-ul gazda. Acest sistem de conexiuni arborescente permite magistralei universale seriale sa gestioneze pana la 127 de dispozitive. Atunci cand un nou dispozitiv USB este concectat intr-un port, el determina in mod automat o modificare a tensiunii in unul din cele doua fire de date. Daca tensiunea este aplicata firului D+, dispozitivul periferic spune ca este un dispozitiv de mare viteza, capabil sa transimita 12 megabiti pe secunda, fiind folosit pentru monitoare, scanere, imprimante si alte dispozitive care trimit un volum mare de date. O tensiune aplicata pe firul D- indica faptul ca dispozitivu are o rata de transfer mica, de 1,5 Mbps de exemplu, fiind folosit pentru o tastatura sau un mouse. Un port conventional serial, de exemplu, trimite numai 100 kilobiti pe secunda. Un port paralel – aproximativ 2,5 Mbps. Lucrand cu tehnologia asemanatoare Plug and Play care permite configurarea automata a componentelor calculatorului personal, controlerul gaza USB ii spune noului dispozitiv, sa se identifice, afla ce anume ii trebuie acestuia pentru transmiterea si receptionarea datelor si asociaza dispozitivului un numar de identificare. Dupa ce noul dizpozitiv a devenit un membru oficial al magistralei, el isi ocupa locul atunci cand controlerul gazda adunca dispozitivele- pentru a emite comenzi, pentru a intreba daca dispozitivul este gata sa trimita sau sa primieasca date si pentru a aloca portiuni din latimea de banda (capacitatea de transmitere a datelor) a magistralei pentru fiecare dispozitiv. De aproximativ un milion de ori pe secunda controlerul trimite interogari sau comenzi in aval (downstream) tuturor dispozitivelor periferice din USB. Fiecare dintre mesajele gazdei incepe cu un jeton care indentifica dispozitivul periferic caruia ii este adresat. Mesajul merge la toate dispozitivele din magistralaq, dar dispozitivele care nu corespund adresei jetonului pur si simplu il ignora. Dispozitivele trimit date in amonte (upstream) catre gazda numai daca gazda le acorda permisiunea. Magistrala universala seriala poate functiona cu trei tipuri de transferuri de date si ascociaza prioritati de latime de banda in ordinea urmatoare: prioritatea cea mai inalta. Prioritatea izocrona, sau in timp real, la care nu poate exista nici o intrerupere in fluxul de date, cum ar fi pentru aplicatiile video sau de sunet a doua prioritate. Transferurile de intreruperi, care apar numai atunci cand un dispozitiv, cum ar fi o tastatura sau un joystick ,genereaza un semnal ocazional de intrerupere pentru a atrage atentia procesorului. Prioritatea “cand timpul permite”. Transferurile in bloc de date pentru imprimante, scanere si camere digitale, in care exista multe date de transmis, dar nicio graba deosebita pentru transmiterea datelor
|