Mikrokontroleri

Autor: Goran Kozomara

 

 


Univerzalni serijski “bus”

USB je skraćenica za Univerzalni Serijski Bus. Kao što samo ime kaže, to je periferijski “bus” koji omogućuje jednostavnu vezu izmedju računara i ostalih periferija. USB je prihvaćen, razvijen i podržan od strane nekoliko vodećih kompanija računarske i telekomunikacione industrije, među kojima su Intel, Microsoft, IBM, Compaq, Digital, NEC i Nothern Telecom.

Da bi bolje razumeli šta to sa sobom donosi novi BUS proučićemo sadašnje stanje povezanosti periferija sa PC računarima. Svaka periferija je mapirana direktno u procesorskom I/O adresnom prostoru, zatim joj je dodeljen interapt (Interrupt Request Line – IRQ), a nekim periferijama direktno pristupanje memoriji (Direct Memory Access – DMA). Svaka periferija ima svoje I/O adrese, IRQ i DMA kanale. Ovakva situacija uzrokuje gomile različitih problema, opterećenje sistema i konflikte pri konfiguraciji periferija.I/O adrese. Svaka I/O periferija zauzima 1KB memorijskog prostora dok se samo mali deo tog prostora efektivno koristi. Nekoliko IRQ linija se koriste u tipičnim periferijama kao što je na primer modem koji može da koristi IRQ4 i IRQ5 i printer koji može da koristi IRQ5 i IRQ7. Zbog ovakvih mogućih situacija dolazi do konflikata među hardverom što nikako ne ide korisniku u korist. Moramo uzeti u obzir i to da svaka periferija kao što su miš, tastatura, ext. modem, stampač koriste odvojene portove koji odgovaraju samo njima i nije im moguće međusobno fizički menjati mesta. 

Sadašnje rešenje priključka periferija
Slika 1. Sadašnje rešenje priključka periferija

Zbog ovoga je broj različitih konektora veoma veliki, što uvećava cenu računara kako kod proizvođača tako i krajnjeg kupca (sl.1.). Vredi pomenuti da se inicijalizacija periferija vrši samo pri podizanju sistema. Ovo znači da neki ne priključen periferijski uređaj da bi korektno radio, morao da bude priključen pre podizanja sistema kako bi uređaj bio propisno inicijalizovan. Iako je Win95,98 takozvani “Plug and Play“ i kod njega je u većini slučajeva potrebno “ručno” podešavanje periferija kako bi se sve što nam je potrebno uštelovalo i što je najvažnije uskladilo sa ostatkom ostalih delova računara. Posle svih karakteristika sadašnjeg stanja PC periferija možemo da zaključimo: svaka periferija zauzima neke sistemske resurse, mogući su konflikti sa drugim periferijama, nije moguć potpun “Plug and Play“ sistem i nije moguće priključenje periferije dok sistem radi.


USB rešenje


Univerzalni Serijski Bus predstavlja rešenje za sve gore navedene nedostatke postojeće arhitekture PC periferija i njihovog priključivanja. USB je niz (serijski) zvezda. Ovo je magistrala (bus) ali fizički predstavlja serije zvezda, ili čvorišta vezana serijski. U čvorištima su vezane razne periferije dok je samo čvorište vezano sa PC računarom. USB omogućuje dve transfer brzine: sporija 1,5 Mbps i puna brzina 12 Mbps. Puna brzina dolazi do izražaja pri prenosu zvuka i slike dok se sporije prenose informacije sa tastature, miša i npr. joistick-a. 

USB podržava četiri različita protokola: 
Control,
Interupt,
Bulk, 
Isochronous 

Control se koristi za isčitavanje podataka iz registara periferija takozvanih krajnjih tačaka (end points). Interupt se koristi za periferije kao što su tastatura, miš, joistick. Bulk se koristi za pristupanje printerima i skenerima. I na kraju Isochronous je dodeljen telekomunikacionim uređajima i garantuje konstantnu brzinu prenosa podataka.

USB arhitektura omogućuje priključenje periferija u toku rada računara i nisu potrebni drajveri za njihov rad. Pri podizanju sistema PC računar inicira mapiranje priključenih periferija. Priključenje periferije se detektuje uz pomoć nivoa napona na kablovima periferija. Kada se periferija detektuje pokreće se komunikacija izmedju računara i periferije pri kojoj se prenose informacije do računara koje je periferija klase, koja je potrebna brzina pristupa i kolika je potrebna “širina” za njegovo pristupanje. Računar prepoznaje priključeni uređaj upoređujući spisak drajvera u sistemu (Windows 95,98) i po tome koliko je već uređaja priključeno dodeljuje periferiji odredjenu “širinu”. Periferija je automatski instalirana čim se fizički priključi na magistralu. To znači da nema više podešavanja I/O, IRQ-a i DMA čime je znatno olakšano instaliranje. Još jedna važna karakteristika USB –a je ta što se kroz veze medju periferijama prosledjuje i napon napajanja od 5V ograničenih na 3 - 5A zbog sigurnosti od sitnih ali bitnih havarija čime je izbegnuto i korišćenje mrežnih adaptera. Takođe je veliki plus to što se koriste već usvojeni priključci koji će biti korišćeni kako za na primer štampač tako i za najjednostavniji miš, ovim je koliko-toliko pojeftinjena proizvodnja a i cena koštanja periferija i samog računara. Sa ovakvom arhitekturom zadnja ploča računara bi mogla da izgleda kao na slici 2.

USB rešenje priključenja periferija
Slika 2. USB rešenje priključenja periferija

U rešavanju problema koji su trenutno još uvek prisutni razni proizvođači su pokušali sami da ih reše. Medju njima je bio Philips sa svojim Access Bus-om, i Apple sa svojim GeoPort-om. U tabeli ispod su prikazane njihove karakteristike zajedno sa novim USB-om.

ADB, A Bus i GeoPort upoređujući sa USB-om ne rešavaju univerzalnost za različite vrste periferija što se vidi sa slike 4. Najveća prednost USB-a je ta što je podržan od strane Microsofta, IBM-a, Compaq i Digital koji se trude da to postane novi standard. Već danas svaki savremeni računar sadrži USB interfejs i Host modul. “Firewire bus”, poznat kao IEEE1394 je najbliži USB-u, i karakteriše ga brzi protok podataka (čak do 400 Mbps), ali mu je cena mnogo veća. Njegovo korišcćenje opravdava samo rad sa zahtevnim video konferencijama. Sa velikom ekspanzijom interneta računari su postali više komunikacioni uređaji nego što je to ikada bilo. Tako će doći do izražaja pravo značenje USB-a, što do sada nije moglo sa sadašnjim serijskim portovima koji su mnogo sporiji. 


Simensovo rešenje


Simens za USB nudi nekoliko mikrokontrolera za nekoliko specifičnih namena. Prvi Simensovi mikrokontroleri su C540U I C541U. Ovi osmobitni mikrokontroleri su derivati kompatibilni sa Intelom 80C51. Ova dva mikrokontrolera se razlikuju u ROM veličini ( C540U = 4K, C541U = 8K) u periferijama (C541U ima watch-dog i SSC, sinhroni serijski komunikacioni interfejs, SPI kompatibilan sa motorolom). Za kompletan pregled pogledati sliku 3.

Interna arhitektura Simensovih mikrokontrolera C540U i C541U koji sadrže USB port
Slika 3. Interna arhitektura Simensovih mikrokontrolera C540U i C541U koji sadrže USB port

Karakteristike Simensovog rešenja u odnosu na druge su:

· Spora i brza USB komunikacija ( 1,5/12 Mbps)
· Podržavanje sva četiri tipa transfera podataka (Control, Interupt, Bulk i Isochronous)
· USB adresiranje u “stand-alone” modu
· Smanjen CPU rad uz pomoć duplog bafera memorije kontrolisanog specijalnim memorijskim menadžerom.

C o p y r i g h t  1998 mikroElektronika. All Right Reserved. Za sva pitanja obratite se redakciji