usb gumiabroncs belső szervezeti usb busz - vezető fejlődés, a diszkriminátort usb-szerű eszköz
Korlátozása az adatsebesség a buszon USB 1.1 specifikáció 12 Mbit / s (teljes sebesség). Lassú eszközök egy alacsony átviteli sebesség - 1,5 Mbit / s (alacsony fordulatszám). Az USB 2.0-s szabvány támogatja a fizikai átviteli sebesség akár 480 Mbit / s (High Speed). Az adatokat sorosan egy pár vezetéket. Élelmiszer bizonyos eszközök rendelkezésre az egyes vezetékek teljesítmény és a föld (az eszközök alacsony fogyasztás).
Programozó munkahely létrehozásával egy külső vezérlő (nem az alaplapon található) USB-eszköz csökken kihasználni szoftver interfész rendszer vezetők USB bus kommunikáció, amely révén valósul csomagok úgynevezett URB (USB kérése Block) csomagokat. Regisztereket USB-vezérlő az alaplapon mára csak korlátozott körben szakemberek - fejlesztő alaplapok és operációs rendszerek. A többi eszköz USB-fejlesztők a Windows operációs rendszer kínálta kellően fejlett szoftver interfész WDM-vezetők, akik vigyázni minden hardver-specifikus műveleteket.
A belső szervezete az USB-buszon
Minden műveletet adatátvitel USB host kezdeményezett. A perifériák nem indítható adatcserét magukat, csak válaszoljon a fogadó csapat. Vegyünk egy általános rendszer adatcsere USB busz.
USB rendszer van osztva három logikai rétegek különleges szabályok az interakció. Az USB-eszköz tartalmaz egy felületet, logisztikai és funkcionális oldalról. A gazda is három részre osztható: a felület, a rendszer és a szoftver. Minden alkatrész felelős csak korlátozott számú feladataira. A logikai és a tényleges kölcsönhatás közöttük van a 3. ábrán látható.
Így adatcsere közötti a felhasználói program és az USB-busz által végrehajtott átviteli puffer memória segítségével a következő szinteken:
· A szint kliens szoftvert a gazda - általában képviselik az USB-eszköz illesztőprogram felhasználói interakció az operációs rendszer az egyik kezét, és egy rendszer vezető, a másik;
· A szint USB rendszer szoftver a host (USBD, Universal Serial Bus Driver) - kezeli a számozás a buszra csatlakoztatott eszközök, ellenőrzi a busz sávszélességet forgalmazása és áramellátást, kezeli a kérelmeket egyéni tényezők;
· USB host controller busz interfész (HCD, Host Controller Driver) - átalakítja az I / O kérést az adatstruktúra, amelyre a host controller végzi a fizikai tranzakciók dolgozó gazda vezérlő regiszterek.
A szint a kliens szoftver határozza meg az adatátvitel elvégzéséhez szükséges műveletet által kért alkalmazást. Miután adatok meghatározására típusú ez a réteg továbbítja szisztémás szinten a következőképpen:
· Egy memória puffer nevezett ügyfél puffer;
· IRP csomag, jelezve a művelet típusát szükség. Azonnali kérelem feldolgozása foglalkozik USB rendszer vezető.
A rendszerszintű USB driver szükséges USB kezelése. Ő felelős a következő műveleteket:
· Allocation USB sávszélessége;
USB tranzakciót a busz - egy csomag csere szekvenciát a gazda és a perifériás eszköz, amely lehet adni vagy venni egy adatcsomag. Amikor a kliens szoftver elküldi IRP szinten, USB-meghajtó rendszer vezető átalakítja azokat egy vagy több ügylet gumik, majd továbbítja a kapott listát Tranzakciós Host Controller Driver.
A rendszer tartalmaz egy USB Driver USB meghajtó és host controller járművezetők. Amikor egy kliens réteg továbbítja IRP szintű rendszer támogatja az USB, USB-meghajtó átalakítja azokat egy vagy több busz tranzakció, majd elküldi a kapott listát ügylet gazda vezérlő driver. host vezérlő driver kap a rendszer buszvezetők kötéslistája és a következő műveleteket végzi:
· Tervezett a tranzakciók végrehajtásának nyert hozzátéve, hogy a listát a tranzakciók
· Kivonat a listán a következő tranzakciót, és elküldi azt a szintet a host controller USB busz interfész;
· Állapotát figyeli minden tranzakció befejezését.
Ha az összes kapcsolódó parancs csomag tranzakciós szintű rendszer értesíti az ügyfelet szinten.
Level host interface busz vezérlő megkapja egyedi USB ügylet a gazda vezérlő driver (USB álló rendszer szoftver szinten), és átalakítja őket a megfelelő sorrendben a busz működését. Ennek eredményeként, az USB-csomagokat továbbítunk mentén fizikai hierarchiáját csomópontok a perifériás USB-eszközt.
Az alsó szinten a perifériás USB eszköz nevezett szintje az USB busz interfész. Együttműködik az szintű USB busz interfész a fogadó oldalon, és továbbítja az adatcsomagok a gazdától a perifériaeszköz által meghatározott formátumban az USB-specifikáció. Ezután elküldi a csomagokat fel - USB-szintű logikai eszközt.
Az átlagos szintje a periféria úgynevezett USB-szintű logikai USB-eszközt. Minden logikai USB-eszköz által képviselt egy sor annak végpontok, amelyek kölcsönhatásba léphetnek a rendszer szintű USB-host. Ezek a pontok a források és a vevők kommunikáció folyik a gazda és a külső USB-eszközt.
A legfelső szintje az USB periféria eszköz nevezett funkcionális szinten. Ez a szint megfelel a szintet a kliens szoftver a házigazda. A szempontból az ügyfél szintjén, az alacsonyabb szinteken szükségesek a szervezet közte és a végpont „adatcsatornákhoz”, hogy menjen le a funkcionális szinten. És tekintve a rendszer funkcionális réteg a következő műveleteket végzi:
· Kapja az adatokat az ügyfél által küldött tier fogadó végpont adatcsatornákhoz alsó réteg logikai USB-eszközt;
· Az adatok a kliens host szinten irányítja őket a végső adatpont alsó réteg logikai csatornák USB-eszközt.
A logikai adatátvitel a végpont és a szoftver keresztül csatorna kiosztás és az adatcserét a csatornán és bemutatott szempontjából szinten, az adatátvitel a következő:
Végpont (végpont) - része az USB-eszközt, amely rendelkezik egy egyedi azonosítóval és a címzett vagy a feladó keresztül továbbított információkat az USB-buszon. Egyszerűen fogalmazva, ez egy puffer, miközben néhány bájt. Jellemzően egy adatblokk memória vagy regiszter a mikrokontroller. Tárolt adatok a végén pont lehet akár a kapott adatokat, illetve az adásra váró adatok. A gazdasejt is van egy puffer vételére és adására adatokat, de a fogadó nincs végpontok.
Endpoint az alábbi főbb paraméterek:
· Gyakorisága hozzáférést a busz;
· Megengedett szolgáltatás késés összeg;
· A kívánt csatorna sávszélesség;
· Szám végpont;
· Módszer kezelési hibák;
· Maximális csomag méretét egy végpontot tud küldeni vagy fogadni;
· Használt végpont típusú csomagok
· Adatátvitel irányba.
Bármilyen USB-eszköz egy végpont nullát (Endpoint Zero). Ez a pont lehetővé teszi a fogadó, hogy lekérdezze az eszközt, hogy meghatározza annak típusát és paramétereit, az inicializálás és a konfiguráció a készülék.
Továbbá nulla pont eszközök jellemzően további végpontok adatcserét a fogadó. További pontok működtethetők csak adatokat fogad a host (belépési pont, IN), vagy csak az adattovábbítás a befogadó (kimeneti pont, OUT).
A nulla pont áll rendelkezésre a készülék után az eszköz csatlakozik a buszra van kapcsolva, és a reset jel érkezett a busz- (újraindítás). Minden más végpontok bekapcsolás után vagy alaphelyzetbe vannak határozatlan állapotot, és nem áll rendelkezésre a munka, amíg a gazda nem végez eszközkonfigurációt eljárást.
Bus specifikáció meghatározza négy különböző adattípusokat végpontok:
· Transmission Control (Kontroll Átigazolások) - használnak, hogy konfigurálja a fogadó készülék, miközben csatlakozik egy vezérlőberendezés és megszerzésére állapot információt működés közben. A protokoll egy garantált kézbesítési parcellák;
· Az adatok továbbítása (Bulk Adatátvitel) - akkor használjuk, ha szükséges biztosítani garantált szállítási adatokat a fogadó a funkciót vagy funkciókat a házigazda, de a szállítási idő nincs korlátozva;
· Adás megszakítás (interrupt Átigazolások) - használható, ha kell küldeniük egy adatcsomag kicsi. Minden csomag átvinni kívánt korlátozott ideig. transzfer műveletek spontán, és nem kell karbantartani lassabban, mint amit az eszköz;
· Egyidejű transzfer (egyidejű átvitel) - lehet kommunikálni a „valós időben”, amikor minden egyes időintervallum átviteléhez szükséges egy meghatározott számú adat, de az információ nem garantált kézbesítési (adatátviteli nincs ismétlés hiba esetén lehet packet loss).
Channel (cső) - közötti logikai kapcsolatot végponti eszköz és a fogadó szoftver. Kétféle modell csatornák:
· Streaming csatorna (vagy egyszerűen patak, folyó cső) - ezen a csatornán az adatátvitelre, melynek szerkezete határozza meg a kliens szoftver. Áramok átvitelére használt adatok átvitele a megszakítás adatok és izokron adatokat. Flow mindig egyirányú. Egy és ugyanazon szám a végpont lehet használni két különböző áramlási csatornák - a bemeneti és kimeneti. adatokat a patak csatorna az alábbi szabályok vonatkoznak:
§ kérelmek kliens illesztőprogramok különböző csatornákon, meg egy bizonyos sorrendben egymáshoz képest el lehet végezni más sorrendben;
§ kérelmek egy csatorna kerül végrehajtásra szigorúan a beérkezés sorrendjében;
§ Amennyiben súlyos hiba (billenő) akkor futás közben bármilyen kérdés, az áramlás megáll;
· Message Channel (üzenet cső vagy az ellenőrző cső) - ezen a csatornán az adatátvitelre, amely meghatározza, hogy az USB specifikáció szerkezetét. Csatornák ilyen típusú kétirányú és továbbítására használt kontroll parcellákon. kommunikációs csatornákat szigorúan szinkronban - USB specifikáció tiltja az egyidejű feldolgozását több lekérdezést nem kezdődhet átvitelét egy új üzenetet, míg az előző feldolgozás befejeződött. Ha hibaüzenet átvitel megszakítható, ha a házigazda, akkor a fogadó indulhat továbbítására egy új üzenetet.
A főbb jellemzői a csatornák a következők:
§ csatorna sávszélesség;
§ használt csatorna típusú átviteli;
§ megfelelő jellemzőkkel végpont: az irányt az adattovábbítás és a maximális csomagméretet.
Buszsávszélesség megoszlik az összes létrehozott csatornákat. Dedikált sáv rendelt a csatorna, és ha egy új csatornát stílusú igényel egy zenekar, amely nem terheli a meglévő értékesítési csatorna kiosztás kérelmet elutasították. USB architektúra belső puffere az összes eszköz és a nagyobb sávszélességet igényel a készülék, annál nagyobb kell, hogy legyen a puffer. USB busz biztosítania kell a csere olyan sebességgel, hogy az adatok a készülék okozta késedelem pufferelés nem haladja meg a néhány milliszekundum.
Csatorna üzenetek társított végpont nulla nevezzük főcsatorna üzenetek (Alapértelmezett vezérlés Pipe and Control Pipe 0). A tulajdonos a csatorna USBD, és arra használják, hogy állítsa be a készüléket. A fő üzenet csatorna csak akkor támogatja sebességváltó vezérlő. A többi csatorna (csatornák nevezzük kliens, Kliens Pipe) során létrehozott a konfiguráció a készülék. A tulajdonosok eszközmeghajtók. Egyéni csatorna továbbítható a patakok, és az üzenetek révén bármilyen típusú átvitel.
Egyéni csatornák beállítása által használt illesztőprogram felülete nevezett eszköz vagy egy csomó egyéni csatornát.