V sobotu 2. listopadu proběhla mohutná oslava naší plnoletosti !!
Multimediaexpo.cz je již 18 let na českém internetu !!

USB

Z Multimediaexpo.cz

konektor USB
Různé typy konektorů USB, zleva doprava: micro USB, mini USB, typ B, samice typ A, typ A, pro srovnání velikosti na obrázku s jedním rublem

USB (Universal Serial Bus) je univerzální sériová sběrnice. Moderní způsob připojení periférií k počítači. Nahrazuje dříve používané způsoby připojení (sériový a paralelní port, PS/2, GamePort apod.) pro běžné druhy periférií - tiskárny, myši, klávesnice, joysticky, fotoaparáty, modemy atd., ale i pro přenos dat z videokamer, čteček paměťových karet, MP3 přehrávačů, externích disků a externích vypalovacích mechanik.

Obsah

Plug and Play

Výhodou je možnost připojování Plug & Play bez nutnosti restartování počítače nebo instalování ovladačů. Zařízení lze připojit za chodu k počítači a během několika sekund je přístupné. Při připojení nového zařízeni nejprve hub podle zdvižené datové linky pozná, že se objevilo nové zařízení. Pak proběhnou následující kroky:

  1. Hub informuje hostitelský počítač (host) o tom, že bylo připojeno nové zařízení.
  2. Hostitelský počítač se dotáže hubu, na který port bylo zařízení připojeno.
  3. Hostitelský počítač nyní ví, na který port bylo zařízení připojeno. Vydá příkaz tento port zapnout a provést vynulování (reset) sběrnice.
  4. Hub vyrobí nulovací signál (reset) o délce 10 ms. Uvolní pro zařízení napájecí proud 100 mA. Zařízení je nyní připraveno a odpovídá na implicitní (default) adrese.
  5. Než zařízení USB obdrží svou vlastní adresu sběrnice, je možno se na ně obracet přes implicitní adresu 0. Hostitel si přečte první bajty deskriptoru zařízení, aby stanovil, jakou délku mohou mít datové pakety.
  6. Hostitel přiřadí zařízení jeho adresu na sběrnici.
  7. Hostitel si ze zařízení pod novou sběrnicovou adresou načte všechny konfigurační informace.
  8. Hostitel přiřadí zařízení jednu z možných konfigurací. Zařízení nyní může odebírat tolik proudu, kolik je uvedeno v jeho deskriptoru zařízení. Tím je připraveno k použití.. Hostitel přiřadí zařízení jeho adresu na sběrnici.
  9. Hostitel si ze zařízení pod novou sběrnicovou adresou načte všechny konfigurační informace.
  10. Hostitel přiřadí zařízení jednu z možných konfigurací. Zařízení nyní může odebírat tolik proudu, kolik je uvedeno v jeho deskriptoru zařízení. Tím je připraveno k použití.

Napájení

Rozlišuje se mezi zařízeními s vlastním napájecím zdrojem (self-powered) a zařízeními, která jsou napájena přes sběrnici USB (bus-powered). V mnoha případech je možno volit oba způsoby. Zařízení pak má například konektor pro napájecí zdroj, který je možno volitelně propojit s externím napájecím zdrojem. Podle specifikace USB je proudový odběr ze sběrnice automaticky omezen. Je li tudíž odebírán větší proud než přípustný, napájení by mělo být odpojeno.

Připojeným zařízením USB zároveň poskytuje i stejnosměrné napájecí napětí 5 Voltů. Připojené zařízení tak může po sběrnici odebírat až 100 mA, v případě potřeby může zařízení požádat o větší proud, maximálně však o 500 mA. U osobních počítačů občas bývají napájecí vodiče sběrnice vyvedeny přímo ze zdroje počítače a USB zařízení připojené k počítači tak může odebírat i mnohem vyšší proud. Tohoto triku zneužívají například některé externí USB pevné disky, jejichž odběr je vyšší než požadovaných 500 mA a které po připojení k jinému počítači nemusí fungovat.

Historie

USB vzniklo za spolupráce firem Compaq, Hewlett-Packard, Intel, Lucent, NEC, Microsoft a Philips. Nahrazuje rozsáhle používaný port RS232. Univerzální sériová sběrnice ulehčuje obecně práci uživateli. USB má především větší šířku pásma než sériový port RS232. První specifikace USB byla navržena v roce 1995, jako levné univerzální rozhraní pro externí zařízení, která vystačí s nižší průchodností dat. Jeho účelem bylo sjednotit způsob připojování těchto periférií. Skutečného rozšíření se dočkalo až v roce 1998 díky revolučnímu počítači Apple iMac. Tento barevný poloprůhledný počítač byl jako první na světě vybaven pouze (!) porty USB a podnítil výrobce k většímu zájmu o výrobu USB periférií a příslušenství. Počítačů iMac se prodalo několik miliónů kusů a mimo rozšíření USB znamenal také návrat firmy Apple na stoly běžných spotřebitelů. Ve verzi USB 1.1 existují pomalá (low-speed) zařízení s přenosovou rychlostí 1,5 Mb/s a rychlá zařízení (full-speed) s rychlostí 12 Mb/s. USB 1.1 však nebylo schopno konkurovat vysokorychlostním rozhraním např. FireWire (IEEE 1394) od firmy Apple (400 Mb/s; až 63 zařízení). Proto se v roce 1999 začalo uvažovat o druhé generaci USB, která by byla použitelná i pro náročnější zařízení (např.: digitální kamery). Tato nová verze, označovaná jako USB 2.0 (Hi-Speed) přišla v roce 2000 a nabídla maximální rychlost 480 Mbit/s, avšak zachovala zpětnou kompatibilitu s USB 1.1.

Princip

USB je sběrnice jen s jedním zařízením typu Master, tj. všechny aktivity vycházejí z PC. Data se vysílají

  • v krátkých paketech o 8 bajtech
  • delších paketech o délce až 256 bajtů.

a přijímají

  • PC může požadovat data od zařízeni.
  • Naopak žádné zařízení nemůže vysílat data samo od sebe.

Veškerý přenos dat se uskutečňuje v tzv. rámech (frame) které trvají přesně 1 milisekundu. Uvnitř jednoho rámu mohou být postupně zpracovávány pakety pro několik zařízení. Přitom se mohou spolu vyskytovat pomalé (low-speed) i rychlé (full-speed) pakety. Obrací-li se PC na více zařízení, zajišťuje jejich rozdělení jako rozdělovač sběrnice (hub). Zabraňuje také, aby signály s plnou rychlostí (full-speed) byly vedeny na pomalá zařízení. Pomalá zařízení pracují s přenosovou rychlosti 1,5 Mb/s. Rychlé přenosy pracuji s rychlosti 12 Mb/s. Časový průběh přenosu informace je předepisován výhradně masterem. Zařízení typu slave se musí synchronizovat z datovým tokem.

Používá se k tomu metoda NRZI (Non-Return-To Zero). Nuly v datech vedou ke změně úrovně, jedničky nechávají úroveň beze změny. Kódováni a dekódování signálů je čistě hardwarovou záležitostí. Přijímač musí být schopen získat signál, přijmout a dekódovat data. Speciální prostředky zajišťují, aby nedocházelo ke ztrátě synchronizace.

Obsahuje-li původní datový tok šest po sobě jdoucích jedniček, přidá vysílač automaticky jednu nulu (vkládání bitůbit-stuffing), aby se tím vynutila změna úrovně. Přijímač tuto nulu z datového toku opět odstraní. Každý datový paket má za účelem synchronizace speciální zaváděcí bajt (00000001b). Přijímač v důsledku kódování NRZI a vsouvání bitů vidí osm střídajících se bitových stavů, na které se může zasynchronizovat. Během následujícího přenosu musí synchronizace zůstat zachována. Všechny tyto procesy se odehrávají pouze v odpovídajících hardwarových součástkách. Přijímač a vysílač jsou realizovány vždy společně v jedné součástce.

Zařízení USB obsahuje jednotku zvanou SIE Serial Interface Engine, která přebírá vlastní práci. K výměně dat mezi SIE a zbytkem zařízení slouží buffery FIFO. FIFO (First In First Out) to jsou paměti, které mohou postupně přijímat a vydávat data podobně jako posuvné registry. Připojený mikrořadič tedy potřebuje jen přečíst data z FIFO a jiná data do FIFO zapsat. Všechno ostatní vyřídí SIE. Ve většině případů je SIE součástí mikrořadiče USB. Zařízení USB má obecně několik pamětí FIFO, jejichž prostřednictvím je možno přenášet data.

Tak například myš která je připojena přes USB má vždy koncovou endpoint 0 a endpoint 1. Endpoint 0 se používá při inicializaci. Vlastní užitková data se z mikrořadiče v určitých časových odstupech zapisují do endpointu 1 a odtud si je vybírá PC. USB software tvoří tzv. trubice (pipes) k jednotlivým endpointům (koncovým adresám). Jedna pipe je logický kanál k jednomu endpointu v jednom zařízení. Pipe si můžeme představit jako datový kanál tvořený jediným vodičem. Ve skutečnosti však jsou data v pipe přenášena jako datové pakety v milisekundových rámech a hardwarem rozdělována na reálné paměti podle jejich koncové (endpoint) adresy. Jedno zařízení může současně používat několik trubic (pipes), takže přenosová rychlost celkově vzroste.

Budoucnost

V průběhu roku 2009 by měla na trh dorazit technologie Wireless USB. Má velmi dobré vyhlídky do budoucna - výrobci by rádi navázali na úspěch USB, které je dnes standardem prakticky v každém osobním počítači. Zatím předpokládané rychlosti jsou od 110 Mbit/s na vzdálenost 10 metrů až po 480 Mbit/s na vzdálenost 3 metrů. Připojit půjde až 127 zařízení sdílející tuto sběrnici - nový standard by také měl přinést zjednodušenou správu a sdílení zařízení mezi více PC.

Protože pro některé typy použití je USB ve verzi 2 nedostatečné, byly zahájeny práce na vývoji nové generace USB, které by mělo podporovat rychlosti až 4,8 Gbit/s a stále zachovávat zpětnou kompatibilitu s USB 2.0. Práce na specifikaci by měly být dokončeny v druhé polovině roku 2008, komerční produkty by se měly více rozšířit v průběhu let 2009 a 2010.

Alternativa FireWire

Alternativou USB je použití standardu IEEE 1394 neboli FireWire.

V současné době jsou k dispozici dvě verze FireWire - původní označovaná dnes jako FireWire 400 neboli-li IEEE 1394a s rychlostí 400 Mbit/s a FireWire 800 nebol-li IEEE 1394b s rychlostí až 800 Mbit/s. FireWire na rozdíl od USB není tak hodně rozšířen. Ačkoli nominální rychlost FireWire 400 (400 Mbit/s) se zdá být nižší než u USB 2.0 (480 Mbit/s), v reálu FireWire dosahuje vyšších rychlostí přenosu dat než USB 2.0, zejména díky „režii“ přenosového protokolu. Dnes se FireWire používá tam kde rychlost USB 2.0 nedostačuje - zejména na připojení digitálních videokamer, externích disků, v ojedinělých případech i na síťové spojení počítačů peer-to-peer (několikrát vyšší rychlost než 100Mbit Ethernet).

V prosinci 2007 došlo k uveřejnění informací o zatím nejnovější a jednoznačně nejvýkonnější variantě rozhraní, které se objeví na trhu asi na konci roku 2008. Přenosové rychlosti mají dosáhnout 1.6 Gbit/s (S1600) a 3.2 Gbit/s (S3200). Tato varianta proto definitivně vytlačí USB 2.0 ze segmentu hi-endových zařízení a bude tvrdou konkurencí i pro připravovaný standard USB 3.0, který se objeví na trhu v roce 2010.

Zajímavosti

  • Maximální délka kabelu mezi sousedními zařízeními je 5 m. Kabel obsahuje 4 vodiče. Dva jsou pro napájení (5 V a zemnění). Druhý pár je kroucený a slouží pro přenos dat.
  • I ta nejnižší přenosová rychlost mnohonásobně překračuje možnosti sériového portu. (Při porovnání obou portů je však třeba brát v úvahu i to, že jedno zařízení si nikdy nemůže nárokovat celou šířku pásma.)
  • Sběrnice USB přináší tu výhodu, že při připojení přídavného rozdělovače sběrnice (hub) jsou k dispozici tři nové porty.
  • Celkem je možno na USB připojit až 127 zařízení.
  • Nevýhodou pro amatérského uživatele je velká složitost USB. Systém USB má aspoň jeden řadič schopný pracovat s USB, vybavený rozsáhlým programem. Na straně PC je nutný ovladač. Psaní ovladače není jednoduché.
  • Kdo se chce vážně zabývat vývojem, stojí ještě před další překážkou: Každé zařízení USB má interní číslo dodavatele (vendorlD), které je oficiálně udělováno organizací USB. Zařízení je také možno dodávat na trh jen s platným VID.

Externí odkazy