12
MAGISTRALA SERIALÃ UNIVERSALÃ - USB (UNIVERSAL SERIAL BUS) 1.1. DESCRIERE GENERALÃ Magistrala USB reprezintã solutia oferitã comunicatiil generatie de calculatoare PC. Este o interfatã serialã rap si usor de folosit. USB a fost creatã ca un standard industrial, o extensi orientatã spre armonizarea cu standardele de comunicatie d este numit CTI (Computer Telephony Integration). Acest asp fundamental din punct de vedere al aplicatiilor generatiei Avantajele acestei solutii fatã de bãtrâna interfatã serialã RS-232 transformatã prin îmbunãtãtiri în EIA/TIA-232-E sunt: rata de transfer - poate atinge 12 Mbps fatã de 11 conecteazã pâna la 127 de dispozitive la PC, (ceea opereazã ca o magistralã) fatã de numai 2 dispozit usor de utilizat de cãtre utilizatorul final (end user) - adãugarea/eliminarea de dispozitive în/din sistem este foarte comodã; are un protocol flexibil; este o solutie ieftina de interconectare. Specificatiile acestei magistrale descriu atributele d protocolul, tipurile de tranzactii, administrarea magistr totodatã furnizeazã informatii necesare pentru construirea standard. USB este o magistralã pe cablu care permite schimb de calculator gazdã si o gamã largã de periferice acc permite ca perifericul fie atasat, configurat, gazda si celelalte periferice opereazã. USB a fost proiectatã în primul rând pentru utilizator intre în detalii de instalare hardware, astfel sistemul co înlocuit cu un control software. Toate problemele presupus mai multor dispozitive cu performante si rate de transfer software. Magistrala USB defineste trei categorii de dispozitive gazda USB (USB Host) functii USB (USB function) distribuitoare USB (USB Hub)

Magistrala Seriala Universal A USB

Embed Size (px)

Citation preview

MAGISTRALA SERIAL UNIVERSAL - USB (UNIVERSAL SERIAL BUS)1.1. DESCRIERE GENERALMagistrala USB reprezint solutia oferit comunicatiilor seriale de noua generatie de calculatoare PC. Este o interfat serial rapid, bidirectional, ieftin si usor de folosit. USB a fost creat ca un standard industrial, o extensie a arhitecturii PC orientat spre armonizarea cu standardele de comunicatie din telefonie, ceea ce este numit CTI (Computer Telephony Integration). Acest aspect este considerat fundamental din punct de vedere al aplicatiilor generatiei urmtoare. Avantajele acestei solutii fat de btrna interfat serial RS-232 transformat prin mbunttiri n EIA/TIA-232-E sunt: rata de transfer - poate atinge 12 Mbps fat de 115 kbps; conecteaz pna la 127 de dispozitive la PC, (ceea ce nseamn c opereaz ca o magistral) fat de numai 2 dispozitive; usor de utilizat de ctre utilizatorul final (end user) adugarea/eliminarea de dispozitive n/din sistem este foarte comod; are un protocol flexibil; este o solutie ieftina de interconectare. Specificatiile acestei magistrale descriu atributele de magistral, definesc protocolul, tipurile de tranzactii, administrarea magistralei (bus management) si totodat furnizeaz informatii necesare pentru construirea unui sistem n acest standard. USB este o magistral pe cablu care permite schimb de date ntre un calculator gazd si o gam larg de periferice accesibile simultan. Magistrala permite ca perifericul s fie atasat, configurat, folosit si deconectat n timp ce gazda si celelalte periferice opereaz. USB a fost proiectat n primul rnd pentru utilizatorii care nu doresc s intre n detalii de instalare hardware, astfel sistemul complicat de cablare a fost nlocuit cu un control software. Toate problemele presupuse de interconectarea mai multor dispozitive cu performante si rate de transfer diferite sunt tratate prin software. Magistrala USB defineste trei categorii de dispozitive fizice: gazda USB (USB Host) functii USB (USB function) distribuitoare USB (USB Hub)

Acestea sunt interconectate ntr-o topologie specific de tip stea multipl. Topologia USB este reprezentat sugestiv n Fig. 1.1. Din figur se poate observa c USB face legtura ntre dispozitivele USB si gazd. n nodul fiecrei stele se gseste un hub. ntre elemente legtura este fcut cu segmente de cablu: fiecare segment de cablu face legtura punct la punct (point-to-point) ntre gazd si o functie sau un hub sau ntre hub si o functie sau un alt hub.

n sistem exist o singur gazd. Interfata dintre gazd si sistemul USB se numeste Host Controller; poate fi o combinatie hardware, software sau firmware. Gazda are implicit un hub care se numeste Root Hub si pune la dispozitie unul sau mai multe puncte de legtur. Punctele de legtur se numesc porturi. Hub-urile si functiile USB sunt referite global ca dispozitive USB. Un hub furnizeaz puncte de legtur suplimentare, iar o functie furnizeaz facilitti suplimentare sistemului. Dispozitivele USB recunosc protocolul USB, rspund la operatii standard si recunosc informatia descriptiv din informatia vehiculata n magistral. n ceea ce priveste initiatorul transferurilor de date pe magistral, acesta este doar gazda. Protocolul folosit este un protocol prin interogare (de tip polled). Datele vehiculate pe magistral sunt grupate n pachete; o tranzactie de magistral implic transmiterea a cel mult trei pachete. Fiecare tranzactie ncepe prin trimiterea de ctre gazd a unui pachet de semnalizare -token packet- care descrie tipul si sensul tranzactiei, adresa dispozitivului USB si numrul nodului destinatie (endpoint). Dispozitivul adresat se autoselecteaz prin decodificarea adresei ce-i corespunde. Urmeaz transferul de date de la gazd spre dispozitivul adresat sau invers, dup cum este specificat n pachetul de semnalizare.

2

Receptorul rspunde n aceast tranzactie printr-un pachet de dialog -handshake packet prin care se confirm (sau nu) ncheierea cu succes a transferului de date. Aspectele electrice si mecanice ale interfetei sunt reglementate foarte precis n specificatiile de magistral. Semnalele electrice sunt vehiculate sub form de semnal diferential (D+ si D-) si sunt posibile dou rate de transfer: 12 Mbps (full-speed) si 1.5 Mbps (low-speed). Ambele rate de transfer sunt suportate n aceeasi magistral prin comutare dinamic automat ntre moduri. Semnalul de tact (clock) este transmis codificat simultan cu datele diferentiale. Codificarea utilizat este NRZI cu mpnare de biti (bit-stuffing). Transportarea semnalelor se face printr-un cablu cu patru fire conductoare. Semnalul util este transportat pe dou conductoare torsadate. Pe celelalte dou conductoare cablul mai transport tensiunea de alimentare nominal de +5V (VBUS) si potentialul de referint (GND). n acest fel pot fi alimentate prin cablul de legtur dispozitive conectate la magistral. n Fig. 1.2. este reprezentat un cablu USB.

Toate dispozitivele au o conexiune n sus, amonte (upstream) si una sau mai multe conexiuni n jos, aval (downstream). Conectorii pentru aceste legturi nu sunt interschimbabili, eliminnd posibilitatea de buclare la hub. Alimentarea dispozitivelor este o problem de magistral la USB. Gazda poate furniza alimentare dispozitivelor USB conectate direct. Din punctul de vedere al alimentrii, dispozitivele pot fi dispozitive care dispun de surs proprie de alimentare (self powered device) sau dispozitive care se alimenteaz prin cablu (bus powered device). Un hub poate, ca si gazda, s furnizeze alimentare dispozitivelor atasate. Un atu al USB este siguranta crescut a transferurilor de date, se poate spune c este o magistral robust. La asigurarea acestei calitti si dau concursul o serie de factori: principii functionale, accesorii implementate n acest scop, restrictii constructive bine definite. Acesta este principalul motiv pentru care semnalele purttoare de informatie sunt semnale electrice diferentiale. Pentru a garanta securitatea datelor este implementat un aparat CRC (soft, hard sau combinat). n caz de eroare sistemul hotrste retransmiterea de trei ori a pachetului alterat, dup care este informat utilizatorul care decide asupra modului de actionare.

3

Usurinta cu care este utilizat USB rezult din atributul special de tip plugand-play al acestei magistrale. USB accept cuplarea si decuplarea de dispozitive n orice moment; sistemul software se adapteaz dinamic la modificrile fizice de topologie. Un dispozitiv USB este plasat fizic n structur prin atasarea la portul unui hub. Hub-ul dispune de indicatori de stare la fiecare port pentru a semnaliza cuplarea sau decuplarea unui dispozitiv. Gazda sesizeaz semnalizarea de la hub si atribuie o adres unic dispozitivului. Dup aceea constat dac dispozitivul este o functie sau un hub. La decuplare hub-ul dezactiveaz portul si indic gazdei acest eveniment care este tratat n continuare de soft-ul gazdei. Pentru a se adapta dinamic, sistemul software USB este permanent ntr-un proces de inventariere a magistralei (bus counting).

1.2. ELEMENTE ARHITECTURALE 1.2.1. Tipuri de transferuri USBArhitectura USB distinge patru tipuri de baz de transferuri de date: transferuri de control (Control Transfers) - sunt folosite pentru configurare si comand si obligatoriu trebuie s fie suportate de toate perifericele; transferuri cu volum mare de date (Bulk Data Transfers) - permit dispozitivelor s schimbe cantitti mari de informatie cu gazda pe msur ce magistrala devine disponibil, (ex.:camere digitale, scannere sau imprimante); transferuri prin ntreruperi (Interrupt Data Transfers) - a fost proiectat ca suport pentru periferice de intrare controlate de om, (tastatur, mouse, joystick), care au nevoie s comunice rar, cantitti mici de date; datele transferate n acest mod sunt caractere, coordonate sau semnalizri de evenimente organizate n unul sau mai multi octeti; transferuri izocrone (Isochronous Transfers) - asigur un acces garantat la magistral, flux de date constant si tolereaz erorile de transmisie; datele izocrone sunt continue si n timp real la toate nivelele: generare, emisie, receptie si utilizare la receptor; acest tip de transfer este folosit pentru fluxuri de transfer n timp real cum ar fi sistemele audio.

1.2.2. Dispozitive USBDispozitivul USB este numit n specificatii device. Toate dispozitivele sunt accesate printr-o adres USB care se atribuie la atasarea acestuia n sistem. Fiecare dispozitiv USB poate dispune de una sau mai multe pipe-uri prin care

4

gazda comunic cu dispozitivul. Toate dispozitivele posed un pipe special, endpoint zero, care este privit ca pipe de control. Mecanismul de accesare a informatiei prin acest port este comun tuturor dispozitivelor. Pipe-ului endpoint zero i este asociat informatia ce descrie complet dispozitivul USB: informatie standard - clasa de dispozitiv, informatii de power management, productor; informatie de clas - semnificatia depinde de clasa de dispozitive; informatii de productor - la alegerea productorului. Exist dou clase de dispozitive: hub (distribuitor) si functie.

1.2.2.1. Dispozitive HUBDispozitivele hub sunt elemente cheie n arhitectura plug-and-play a USB. Fig. 1.3. arat un hub tipic .

Hub-urile sunt folosite pentru a simplifica conectica din punctul de vedere al utilizatorului si totodat determin un sistem robust si ieftin. Punctele de atasare se numesc porturi. Exist un port spre gazd (amonte upstream port) si mai multe porturi spre alte dispozitive (aval - downstream port). Un hub are dou componente: un repetor (Hub Repeator) si un controler (Hub Controller). Repetorul este un comutator comandat prin protocol, care face legtura ntre portul amonte cu unul din porturile aval. Controlerul contine registre de interfat care fac posibil comunicarea cu gazda, pentru configurare si comand.

1.2.2.2. Dispozitive functiiFunctia este un dispozitiv USB capabil s transmit informatii de date sau control prin magistral. n mod obisnuit, o functie este un periferic independent cu un cablu care se ataseaz la un port al unui hub. Este posibil ca o unitate fizic s includ mai multe functii si un hub, dispunnd de un singur cablu de conexiune. Acesta se numeste dispozitiv compus si este vzut de gazd ca un hub cu mai multe dispozitive nedetasabile. Fiecare functie posed informatie de configurare prin care sunt descrise pentru gazd facilittile si resursele necesare. Exemple de functii de dispozitiv:5

dispozitiv de localizare - mouse, tablet digitizoare, light pen; dispozitiv de intrare - tastatura; dispozitiv de iesire - imprimanta; adaptor de telefonie - ISDN.

Fig. 1.4. prezint un sistem USB la un calculator PC model desktop.

1.2.3. Gazda USBGazda ocup o pozitie special n coordonarea sistemului USB. Pe lng pozitia fizic special, gazda are responsabilitti speciale n ceea ce priveste magistrala si dispozitivele atasate. Controleaz accesul la magistral; un dispozitiv are acces la magistral doar dac i este acordat de gazd. Gazda este responsabil pentru urmtoarele actiuni: detectarea conectrii/deconectrii de dispozitive USB; administreaz trasferurile de control ntre gazd si dispozitive USB; administreaz transferurile de date ntre gazd si dispozitive USB; culege informatii de stare si statistici de activitate; furnizeaz alimentare dispozitivelor USB atasate. Gazda interactioneaz cu dispozitivele USB prin controlerul gazdei. Exist de asemenea o interactiune ntre software-ul de sistem si software-ul de dispozitiv pe urmtoarele cinci domenii: numrare si configurare de dispozitive; transferuri izocrone; transferuri asincrone de date; administrarea alimentrii (power management); informatii de administrare de magistral si de dispozitiv.

1.2.4. Extensii arhitecturale6

Arhitectura USB este extensibil la nivelul interfetei dintre driver-ul Host Controller-ului si driver-ul USB. n viitor este posibil s se dezvolte arhitecturi cu mai multe Host Controller-e si cu drivere asociate.

1.3. FLUXUL DE DATE N MAGISTRALA USB 1.3.1. Reprezentarea elementelor functionaleUn mod simplu de a vedea legtura ntre gazd si dispozitive este reprezentat n Fig. 1.5. O abordare mai profund este reprezentat n figura urmtoare, Fig. 1.6.

Dispozitivul fizic USB este o component hardware aflat la captul unui cablu, capabil s execute functii utile. Componenta client-software este reprezentat de software-ul care ruleaz pe gazd; fiecrui dispozitiv i corespunde o component client-software care se regseste la gazd. Aceasta se livreaz fie cu sistemul de operare, fie odat cu dispozitivul USB.7

Componenta sistem-software-USB este software-ul care suport magistrala USB ntr-un sistem de operare particular. Aceast component se livreaz cu sistemul de operare si este independent de dispozitivul USB particular sau de componenta client-software. Componenta controler-gazd-USB (USB-Host Controller) reprezint interfata spre magistral a controlerului si este constituit din hardware+software care permit dispozitivelor s se ataseze la gazd. Responsabilittile si drepturile sunt mprtite ntre cele patru componente descrise. O simpl conexiune gazd-dispozitiv presupune o interactiune pe mai multe nivele ntre mai multe entitti. Nivelul interfetei spre magistrala USB furnizeaz conectarea fizic a semnalelor ntre gazd si dispozitiv; Nivelul dispozitiv USB reprezint modelul care execut operatii generice ntre software-sistem si dispozitiv; Nivelul functie USB reprezint modelul care confer facilitti suplimentare gazdei prin entitatea client-software adecvat dispozitivului; Nivelele dispozitiv USB si functie USB modeleaz o comunicatie logic, comunicatie ce se realizeaz efectiv fizic prin nivelul interfetei spre magistrala USB.

1.3.2. Topologia fizic a magistraleiDispozitivele sunt conectate la gazd printr-o retea de tip stea (multipl) ca n Fig. 1.7.

Punctele de atasare sunt puse la dispozitie prin clasa de dispozitive numite hub (distribuitor). Punctele de atasare sunt porturile. Gazda are un hub inclus, numit root-hub (RH n figur) prin care furnizeaz unul sau mai multe puncte de

8

legtur. Dispozitivele care confer gazdei facilitti suplimentare se numesc functii. ntr-un dispozitiv fizic pot fi nglobate mai multe functii. Unitatea fizic contine n acest caz un hub la care sunt atasate permanent n configuratie fix functiile individuale; acesta este un dispozitiv compus.

1.3.3. Topologia logic a magistralein timp ce conexiunea fizic este o stea multipl, gazda comunic cu fiecare dispozitiv logic ca si cum ar fi direct conectat la hub-ul rdcin (root hub). Modelul logic este ilustrat n Fig. 1.8.

1.3.4. Relatia ntre client-software si functieDesi att topologia fizic ct si topologia logic reflect caracterul partajat al magistralei USB, la activarea unei functii, imaginea interactiunii dintre componenta client-software si functie este ca si cum nu ar exista alte elemente n sistem. Client-software interactioneaz doar cu interfata de interes. Modelul de interactiune este redat in Fig. 1.9.

9

1.4. INTERFATA ELECTRIC 1.4.1. Caracteristicile circuitelor emittoareUSB foloseste circuite diferentiale pentru elaborarea semnalului electric emis pe cablul USB. Nivele de tensiune garantate de aceste circuite sunt cele din Tabelul 1.1.

Iesirile circuitelor emittoare de magistral trebuie s fie de tip three-state pentru a permite operatii bidirectionale half-duplex. Structura unui circuit emittor de magistral este reprezentat n Fig. 1.10

Rezistenta RS este inclus n structura emittorului. Rezistenta echivalent de iesire a emittorului trebuie s fie ntre 28W si 44W. Specificatiile de magistral prevd restrictii si pentru timpii de crestere si descrestere ai semnalului de date. Acesta se msoar ntre 10% si 90% din excursia semnalului care poate s ia valori ntre -1.0V si +4.6V. Figura 1.11. defineste timpii de crestere (rise time) si descrestere (fall time).

10

VCRS, potentialul de intersectie al semanlului diferential (Crossover voltage), poate lua valori ntre 1.3V si 2.0V.

1.4.2. Caracteristicile circuitelor receptoareReceptorul de linie este un circuit cu intrare diferential. Nivelele de tensiune acceptate la intrare sunt cele din Tabelul 1.2.

11

Bibliografie[1] C. Gerigan, P. Ogrutan, Tehnici de interfatare, Editura Transilvania Brasov

12