USB 2.0 standard beskrivelse. Grundlæggende om USB-grænseflade

Historien om fremkomsten og udviklingen af ​​Universal Serial Bus (USB) standarder

    Før den første implementering af USB-bussen inkluderede standardkonfigurationen af ​​en personlig computer én parallelport, normalt til tilslutning af en printer (LPT-port), to serielle kommunikationsporte (COM-porte), normalt til tilslutning af en mus og modem, og en port til et joystick (GAME port ). Denne konfiguration var ganske acceptabel i de tidlige dage af personlige computere, og i mange år var det den praktiske standard for udstyrsproducenter. Fremskridtene stod dog ikke stille, rækkevidden og funktionaliteten af ​​eksterne enheder blev konstant forbedret, hvilket i sidste ende førte til behovet for at revidere standardkonfigurationen, hvilket begrænsede muligheden for at tilslutte yderligere perifere enheder, som blev mere og mere talrige hver dag.

    Forsøg på at øge antallet af standard I/O-porte kunne ikke føre til en grundlæggende løsning på problemet, og behovet opstod for at udvikle en ny standard, der ville give enkel, hurtig og bekvem tilslutning af et stort antal perifere enheder af forskellige formål til enhver standardkonfigurationscomputer, hvilket i sidste ende førte til fremkomsten af ​​Universal Serial Bus Universal Serial Bus (USB)

    Første serielle grænsefladespecifikation USB (Universal Serial Bus), hedder USB 1.0, dukkede op i 1996, en forbedret version baseret på det, USB 1.1- V 1998 Båndbredden på USB 1.0- og USB 1.1-busserne - op til 12 Mbit/s (faktisk op til 1 megabyte pr. sekund) var ganske tilstrækkelig til perifere enheder med lav hastighed, såsom et analogt modem eller computermus, men utilstrækkeligt til enheder med høje dataoverførselshastigheder, hvilket var den største ulempe ved denne specifikation. Praksis har dog vist, at den universelle seriel bus er en meget vellykket løsning, der er vedtaget af næsten alle computerudstyrsproducenter som hovedretningen for udvikling af computerudstyr.

I 2000 der er en ny specifikation - USB 2.0, der allerede giver dataoverførselshastigheder på op til 480 Mbit/s (faktisk op til 32 megabyte pr. sekund). Specifikationen forudsatte fuld kompatibilitet med den tidligere USB 1.X-standard og ganske acceptabel ydeevne for de fleste perifere enheder. Et boom i produktionen af ​​enheder udstyret med et USB-interface begynder. "Klassiske" input-output-grænseflader blev fuldstændig fortrængt og blev eksotiske. For noget højhastighedsudstyr forblev selv den succesrige USB 2.0-specifikation dog en flaskehals, hvilket krævede yderligere udvikling af standarden.

I 2005 Specifikationen for den trådløse implementering af USB blev annonceret - Trådløs USB - WUSB, hvilket giver dig mulighed for trådløst at forbinde enheder i en afstand på op til 3 meter med en maksimal dataoverførselshastighed på 480 Mbit/s og i en afstand på op til 10 meter med en maksimal hastighed på 110 Mbit/s. Specifikationen modtog ikke hurtig udvikling og løste ikke problemet med at øge den faktiske dataoverførselshastighed.

I 2006 specifikation blev annonceret USB-OTG (USB O n- T han- G o, takket være hvilket det blev muligt at kommunikere mellem to USB-enheder uden en separat USB-vært. Værtens rolle i dette tilfælde udføres af en af ​​de perifere enheder. Smartphones, digitale kameraer og andre mobile enheder skal fungere som både en vært og en perifer enhed. For eksempel, når et kamera er tilsluttet via USB til en computer, er det en perifer enhed, og når en printer er tilsluttet, er det en vært. Understøttelse af specifikationer USB-OTG blev efterhånden standarden for mobile enheder.

I 2008 den endelige specifikation af den nye universelle serielle busstandard er dukket op - USB 3.0. Som med tidligere versioner af busimplementeringen er elektrisk og funktionel kompatibilitet med tidligere standarder tilvejebragt. Dataoverførselshastigheden for USB 3.0 er steget 10 gange - op til 5 Gbps. 4 ekstra kerner blev tilføjet til interfacekablet, og deres kontakter blev lagt separat fra de 4 kontakter fra tidligere standarder i en ekstra kontaktrække. Udover den øgede dataoverførselshastighed er USB-bussen også kendetegnet ved en øget strømstyrke i strømkredsløbet sammenlignet med tidligere standarder. Den maksimale dataoverførselshastighed over USB 3.0-bussen er blevet acceptabel for næsten ethvert masseproduceret perifert computerudstyr.

I 2013 Følgende grænsefladespecifikation blev vedtaget - USB 3.1, hvis dataoverførselshastighed kan nå 10 Gbit/s. Derudover er der dukket et kompakt 24-bens USB-stik op Type-C, som er symmetrisk, så kablet kan indsættes på begge sider.

Med udgivelsen af ​​USB 3.1-standarden annoncerede USB Implementers Forum (USB-IF), at USB 3.0-stik med hastigheder op til 5 Gbps (SuperSpeed) nu vil blive klassificeret som USB 3.1 Gen 1, og nye USB 3.1-stik med hastigheder op. til 10 Gbps s (SuperSpeed ​​​​USB 10 Gbps) - ligesom USB 3.1 Gen 2. USB 3.1-standarden er bagudkompatibel med USB 3.0 og USB 2.0.

I 2017 år udgav USB Implementers Forum (USB-IF) en specifikation USB 3.2. Den maksimale overførselshastighed er 10 Gbit/s. USB 3.2 giver dog mulighed for at samle to forbindelser ( Dual-bane drift), så du kan øge den teoretiske gennemstrømning til 20 Gbit/s. Implementeringen af ​​denne funktion er gjort valgfri, det vil sige, at dens support på hardwareniveau vil afhænge af den specifikke producent og tekniske behov, som adskiller sig, for eksempel for en printer og en bærbar harddisk. Muligheden for at implementere denne tilstand gives kun ved brug USB Type-C.

www.usb.org- USB-specifikationsdokumentation for udviklere på engelsk.

Det skal bemærkes, at der var, og stadig eksisterer, et alternativ til USB-bussen. Allerede før introduktionen udviklede Apple en seriel bus-specifikation FireWire(andet navn - iLink), som i 1995 blev standardiseret af American Institute of Electrical and Electronics Engineers (IEEE) under nummer 1394. Bus IEEE 1394 kan fungere i tre tilstande: med dataoverførselshastigheder på op til 100, 200 og 400 Mbit/s. Men på grund af de høje omkostninger og mere komplekse implementering end USB, er denne type højhastigheds seriel bus ikke blevet udbredt, og bliver gradvist erstattet af USB 2.0 - USB 3.2.

Generelle principper for drift af USB-enheder (Universal Serial Bus).

    USB-grænsefladen viste sig at være så vellykket en løsning, at den var udstyret med næsten alle klasser af perifere enheder, fra en mobiltelefon til et webcam eller en bærbar harddisk. De mest udbredte enheder (for nu) er dem, der understøtter USB 2.0. USB 3.0 – 3.1 er dog mere efterspurgt efter højhastighedsenheder, hvor det bliver den vigtigste, der gradvist erstatter USB 2.0.

    Perifere enheder med USB-understøttelse, når de er tilsluttet en computer, genkendes automatisk af systemet (især driversoftware og busbåndbredde) og er klar til at arbejde uden brugerindblanding. Enheder med lavt strømforbrug (op til 500mA) har muligvis ikke deres egen strømforsyning og får strøm direkte fra USB-bussen.

    Brug af USB eliminerer behovet for at fjerne computerkabinettet for at installere yderligere ydre enheder og eliminerer behovet for at foretage komplekse indstillinger, når du installerer dem.

    USB eliminerer problemet med at begrænse antallet af tilsluttede enheder. Når du bruger USB, kan op til 127 enheder arbejde samtidigt med en computer.

    USB giver mulighed for hot plugging. Dette kræver ikke først at slukke for computeren, derefter tilslutte enheden, genstarte computeren og konfigurere installerede perifere enheder. For at frakoble en perifer enhed behøver du ikke følge den omvendte procedure beskrevet ovenfor.

Kort sagt giver USB dig mulighed for praktisk talt at realisere alle fordelene ved moderne plug and play-teknologi. Enheder designet til USB 1.x kan arbejde med USB 2.0-controllere. og USB 3.0

Når en perifer enhed er tilsluttet, genereres en hardwareafbrydelse, og kontrol modtages af HCD-driveren ( Driver til værtscontroller) USB controller ( USB Host Controller - UHC), som i øjeblikket er integreret i alle fremstillede bundkortchipsæt. Den poller enheden og modtager identifikationsoplysninger fra den, baseret på hvilken kontrol, der overføres til føreren, der servicerer denne type enhed. UHC-controlleren har en rodhub (Hub), som giver forbindelse til USB-enhedsbussen.

Hub (USB HUB).

Tilslutningspunkterne kaldes havne. En anden hub kan tilsluttes porten som en enhed. Hver hub har en udgående port ( opstrøms havn), der forbinder den til hovedcontrolleren og downstream-porte ( nedstrøms havn) til tilslutning af perifere enheder. Hubs kan registrere, tilslutte og afbryde ved hver downlink-port og levere strømfordeling til downlink-enheder. Hver af downlink-portene kan aktiveres individuelt og konfigureres ved fuld eller lav hastighed. Hubben består af to blokke: hub-controlleren og hub-repeateren. En repeater er en protokolstyret switch mellem en uplink-port og downlink-porte. Hubben indeholder også hardware til at understøtte nulstilling af forbindelse og pause/genoptag. Controlleren leverer grænsefladeregistre, der muliggør dataoverførsel til og fra hovedcontrolleren. Definerede hub-status- og kontrolkommandoer giver værtsprocessoren mulighed for at konfigurere hub'en og overvåge og administrere dens porte.


Eksterne hubs kan have deres egen strømforsyning eller få strøm fra USB-bussen.

USB-kabler og stik

Type A-stik bruges til at forbinde til en computer eller hub. Type B-stik bruges til at forbinde til eksterne enheder.

Alle USB-stik, der kan tilsluttes hinanden, er designet til at fungere sammen.

Alle ben på USB 2.0-stikket er elektrisk kompatible med de tilsvarende ben på USB 3.0-stikket. Samtidig har USB 3.0-stikket yderligere kontakter, der ikke har en korrespondance i USB 2.0-stikket, og derfor, når du tilslutter stik af forskellige versioner, vil de "ekstra" kontakter ikke blive brugt, hvilket sikrer normal drift af version 2.0 forbindelse. Alle stik og stik mellem USB 3.0 Type A og USB 2.0 Type A er designet til at fungere sammen. USB 3.0 Type B-stikket er lidt større end hvad der kræves til et USB 2.0 Type B og tidligere stik. Samtidig er det muligt at tilslutte denne type stik til disse stik. For at tilslutte en perifer enhed med et USB 3.0 Type B-stik til en computer kan du derfor bruge begge typer kabler, men for en enhed med et USB 2.0 Type B-stik - kun et USB 2.0-kabel. eSATAp-stik, betegnet som eSATA/USB Combo, det vil sige at have mulighed for at tilslutte et USB-stik til dem, har mulighed for at tilslutte USB Type A-stik: USB 2.0 og USB 3.0, men i USB 2.0-hastighedstilstand.

USB Type-C-stik giver forbindelser til både eksterne enheder og computere, erstatter de forskellige Type A- og Type B-stik og kabler fra tidligere USB-standarder og giver fremtidige udvidelsesmuligheder. Det 24-bens dobbeltsidede stik er ret kompakt, tæt i størrelse på micro-B-stikkene i USB 2.0-standarden. Konnektorens dimensioner er 8,4 mm gange 2,6 mm. Konnektoren giver 4 par kontakter til strøm og jord, to differentialpar D+/D- til datatransmission ved hastigheder mindre end SuperSpeed ​​(i Type-C kabler er kun ét af parrene tilsluttet), fire differentialpar til transmission af højhastigheds-SuperSpeed-signaler, to hjælpekontakter (sidebånd), to konfigurationsben til at bestemme kabelorientering, en dedikeret konfigurationsdatakanal (BMC-kodning - bifase-mærkekode) og en +5 V strømben til aktive kabler.

Stikkontakter og USB Type-C kabellayout

Type-C - stik og fatning

Con. Navn Beskrivelse Con. Navn Beskrivelse
A1 GND Jordforbinde B12 GND Jordforbinde
A2 SSTXp1 Diff. par nr. 1 SuperSpeed, transmission, positiv B11 SSRXp1 Diff. par nr. 2 SuperSpeed, modtagelse, positiv
A3 SSTXn1 Diff. par nr. 1 SuperSpeed, transmission, negativ B10 SSRXn1 Diff. par nr. 2 SuperSpeed, modtagelse, negativ
A4 V BUS Ernæring B9 V BUS Ernæring
A5 CC1 Konfigurationskanal B8 SBU2 Sidebånd nr. 2 (SBU)
A6 Dp1 Diff. ikke-SuperSpeed ​​​​par, position 1, positiv B7 Dn2 Diff. ikke-SuperSpeed ​​​​par, position 2, negativ
A7 Dn1 Diff. ikke-SuperSpeed ​​​​par, position 1, negativ B6 Dp2 Diff. ikke-SuperSpeed ​​​​par, position 2, positiv
A8 SBU1 Sidebånd nr. 1 (SBU) B5 CC2 Konfigurationskanal
A9 V BUS Ernæring B4 V BUS Ernæring
A10 SSRXn2 Diff. par nr. 4 SuperSpeed, transmission, negativ B3 SSTXn2 Diff. par nr. 3 SuperSpeed, modtagelse, negativ
A11 SSRXp2 Diff. par nr. 4 SuperSpeed, transmission, positiv B2 SSTXp2 Diff. par nr. 3 SuperSpeed, modtagelse, positiv
A12 GND Jordforbinde B1 GND Jordforbinde
  1. Uafskærmet differentialpar, kan bruges til at implementere USB lav hastighed (1.0), fuld hastighed (1.0), høj hastighed (2.0) - op til 480 Mbps
  2. Kablet implementerer kun et af ikke-SuperSpeed ​​​​differentialparrene. Denne kontakt bruges ikke i stikket.
Formålet med lederne i USB 3.1 Type-C-kablet
Stik nr. 1 på kablet Type-C Kabel Type-C Stik nr. 2 på kablet Type-C
Kontakt Navn Farve på lederkappe Navn Beskrivelse Kontakt Navn
Fletning Skærm Kabelfletning Skærm Udvendig kabelfletning Fletning Skærm
A1, B1, A12, B12 GND Konserves GND_PWRrt1
GND_PWRrt2
Fællesjord> A1, B1, A12, B12 GND
A4, B4, A9, B9 V BUS Rød PWR_V BUS 1
PWR_V BUS 2
V BUS strømforsyning A4, B4, A9, B9 V BUS
B5 V CONN Gul
PWR_V CONN V CONN strøm B5 V CONN
A5 CC Blå CC Konfigurationskanal A5 CC
A6 Dp1 hvid UTP_Dp Uafskærmet differentialpar, positivt A6 Dp1
A7 Dn1 Grøn UTP_Dn Uafskærmet differentialpar, negativ A7 Dn1
A8 SBU1 Rød SBU_A Databånd A B8 SBU2
B8 SBU2 Sort SBU_B Databånd B A8 SBU1
A2 SSTXp1 Gul * SDPp1 Afskærmet differentialpar #1, positivt B11 SSRXp1
A3 SSTXn1 Brun * SDPn1 Afskærmet differentialpar #1, negativ B10 SSRXn1
B11 SSRXp1 Grøn * SDPp2 Afskærmet differentialpar #2, positivt A2 SSTXp1
B10 SSRXn1 Orange * SDPn2 Afskærmet differentialpar #2, negativ A3 SSTXn1
B2 SSTXp2 Hvid * SDPp3 Afskærmet differentialpar #3, positivt A11 SSRXp2
B3 SSTXn2 sort * SDPn3 Afskærmet differentialpar #3, negativ A10 SSRXn2
A11 SSRXp2 Rød * SDPp4 Afskærmet differentialpar #4, positivt B2 SSTXp2
A10 SSRXn2 blå * SDPn4 Afskærmet differentialpar #4, negativ B3 SSTXn2
* Farver til lederbeklædning er ikke specificeret af standarden

Tilslutning af ældre enheder til computere udstyret med et USB Type-C-stik kræver et kabel eller en adapter, der har et Type A- eller Type B-stik eller -stik i den ene ende og et USB Type-C-stik i den anden ende. Standarden tillader ikke adaptere med et USB Type-C-stik, da deres brug kan skabe "mange forkerte og potentielt farlige" kabelkombinationer.

USB 3.1-kabler med to Type-C-stik i enderne skal fuldt ud overholde specifikationen - indeholde alle de nødvendige ledere, skal være aktive, inkludere en elektronisk identifikationschip, der viser funktionsidentifikationer afhængigt af kanalkonfigurationen og leverandørdefinerede meddelelser (VDM) fra specifikationen USB Power Delivery 2.0. Enheder med et USB Type-C-stik kan valgfrit understøtte strømskinner med en strømstyrke på 1,5 eller 3 ampere ved en spænding på 5 volt ud over hovedstrømforsyningen. Strømforsyninger skal annoncere muligheden for at levere øgede strømme via konfigurationskanalen eller fuldt ud understøtte USB Power Delivery-specifikationen via konfigurationsstiften (BMC-kodning) eller ældre signaler kodet som BFSK via VBUS-stiften. USB 2.0-kabler, der ikke understøtter SuperSpeed-bussen, må ikke indeholde en elektronisk identifikationschip, medmindre de kan bære 5 ampere strøm.

USB Type-C-stikspecifikationen version 1.0 blev udgivet af USB Developers Forum i august 2014. Den blev udviklet omkring samme tid som USB 3.1-specifikationen.

Brug af et USB Type-C-stik betyder ikke nødvendigvis, at enheden implementerer højhastigheds-USB 3.1 Gen1/Gen2-standarden eller USB Power Delivery-protokollen.

    Universal Serial Bus er den mest udbredte og formentlig den mest succesrige computergrænseflade til perifere enheder i hele udviklingen af ​​computerudstyrs historie, hvilket fremgår af det enorme antal USB-enheder, hvoraf nogle kan virke noget

Hej alle. Nogle gange er folk interesserede i at vide, hvordan USB 3.0 adskiller sig fra USB 2.0, nogle gange ønsker de at forstå, hvilken version eller type USB-stik de har på deres computer, hvilken slags dinosaur USB 1.0 er, og så videre. Lad os dykke lidt dybere ned i dette emne.

USB-standarden dukkede op i midten af ​​90'erne. Dechifreret USB her er hvordan - Universal seriel bus. Denne standard er udviklet specifikt til kommunikation mellem perifere enheder og en computer og indtager nu en førende position blandt alle typer kommunikationsgrænseflader. Dette er ikke overraskende. I dag er det svært at forestille sig enhver enhed uden et USB-stik, selvom disse stik varierer i type.

Typer af USB-stik

I dag findes der et ret stort antal typer af USB-stik. Nogle er mere almindelige, nogle mindre. I hvert fald, lad os tage et kig på dem.

USBtype-EN– en af ​​de mest almindelige typer USB-stik. Du har måske set det på din, på, opladerblok og mere. Har mange anvendelsesmuligheder. Med dens hjælp kan du forbinde mus og tastaturer til en computer (eller anden enhed), flashdrev, eksterne drev, smartphones og så videre. Denne liste kan fortsættes i lang tid, hvis du tænker over det.

USBtype-B– stikket bruges hovedsageligt til at tilslutte en printer eller andre eksterne enheder til computeren. Modtaget meget mindre udbredt end USB type-A.

Mini USB var ret almindelig på mobile enheder før fremkomsten af ​​Micro USB. I dag er det meget sjældent, men du kan stadig finde det på nogle ældre enheder. På min bærbare højttaler modtager Mini USB-stikket strøm til at oplade batteriet. Jeg købte denne højttaler for omkring 5 år siden (den viste sig at være holdbar).

Micro USB bruges nu på smartphones og mobiltelefoner fra næsten alle producenter. Dette USB-stik har opnået en utrolig popularitet blandt mobile enheder. USB Type-C indtager dog efterhånden sin plads.

USB Version 1.0 – Arkæologiske udgravninger

USB-standardens tipoldefar er USB 1.0 blev født i den kolde november 1995. Men han blev født lidt for tidligt og opnåede ikke meget popularitet. Men hans yngre bror USB 1.1, født tre år senere, var et mere levedygtigt eksemplar og var i stand til at tiltrække nok opmærksomhed.

Med hensyn til den tekniske del var dataoverførselshastigheden lille, men efter datidens standarder var denne hastighed mere end nok. Hastigheden var op til 12 Mbit/s, og dette var i høj gennemløbstilstand.

Forskelle mellem USB 2.0 og USB 3.0 stik

USB 2.0 og USB 3.0 er to helt moderne USB-standarder, som nu bruges overalt i computere og bærbare computere. USB 3.0 er selvfølgelig nyere og hurtigere, og er også fuldt bagudkompatibel med USB 2.0 enheder. Men hastigheden vil i dette tilfælde være begrænset til den maksimale hastighed i henhold til USB 2.0-standarden.

I teorien er USB 3.0-overførselshastigheder cirka 10 gange hurtigere end USB 2.0 (5 Gbps vs. 480 Mbps). Men i praksis er hastigheden af ​​informationsudveksling mellem enheder ofte begrænset af enhederne selv. Selvom USB 3.0 generelt stadig vinder.

Tekniske forskelle

Selvom USB 2.0- og USB 3.0-standarderne er bagudkompatible, har de alligevel nogle tekniske forskelle. USB 2.0 har 4 ben – 2 til strømforsyning af enheder og 2 til dataoverførsel. Disse 4 ben er blevet bibeholdt i USB 3.0-standarden. Men udover dem blev der tilføjet yderligere 4 kontakter, som er nødvendige for høje dataoverførselshastigheder og hurtigere opladning af enheder. USB 3.0 kan i øvrigt fungere med strøm op til 1 Ampere.

Som et resultat er USB 3.0 standardkablet blevet tykkere, og dets længde overstiger nu ikke 3 meter (i USB 2.0 nåede den maksimale længde 5 meter). Men du kan oplade din smartphone meget hurtigere, selvom du forbinder flere smartphones til ét stik gennem en splitter.

Producenterne tog sig naturligvis af visuelle forskelle. Du behøver ikke lede efter bundkortets emballage for at se, hvilke USB-standarder den understøtter. Og du behøver ikke at gå ind i dine computerindstillinger eller enhedshåndtering for at gøre dette. Bare se på farven på dit stik. USB 3.0-stikket er næsten altid blåt. Meget sjældent er den også rød. Mens USB 2.0 næsten altid er sort.

Så nu kan du med et hurtigt blik afgøre, om du har USB 2.0 eller USB 3.0 på din bærbare computer.

Dette er formentlig slutningen på samtalen om, hvordan USB 2.0 adskiller sig fra USB 3.0.

Konklusion

Hvad har vi lært af denne artikel? At USB er opdelt i dataoverførselsstandarder, som adskiller sig i dataoverførselshastighed. Og også at USB har et stort antal stiktyper.

Og det mest interessante, som jeg glemte at nævne i artiklen, er, at typerne af stik kan kombineres som følger. Du kan finde en USB type-A i fuld størrelse og en USB type-B i fuld størrelse, mens der er (men er sjældne) mikro-USB type-A og mikro-USB type-B (meget almindelig). USB type-A kan fungere ved hjælp af USB 2.0-protokollen eller måske ved hjælp af USB 3.0-protokollen. Generelt, hvis du vil, kan du blive forvirret.

Og hvis du er bekymret for spørgsmålet om, hvilke stik det er bedre at vælge en bærbar USB 2.0 eller USB 3.0, så fortvivl slet ikke. Nu er alle moderne bærbare computere og computere udstyret med begge typer USB. For eksempel har min bærbare computer to USB 2.0-stik og et USB 3.0-stik. Og alle tre stik er USB type-A.

Det er, hvad de er - USB!

Har du læst til det sidste?

Var denne artikel til hjælp?

Ikke rigtig

Hvad kunne du præcist ikke lide? Var artiklen ufuldstændig eller falsk?
Skriv i kommentarer, og vi lover at forbedre os!

Giver dataudveksling mellem værten og enheden. På protokolniveau løses opgaver som at sikre pålideligheden og pålideligheden af ​​transmission og flowstyring. Al trafik på USB-bussen overføres gennem transaktioner; i hver transaktion er udveksling kun mulig mellem værten og den adresserede enhed (dennes slutpunkt).

Alle transaktioner (udvekslinger) med USB-enheder består af to eller tre pakker; typiske sekvenser af pakker i transaktioner er vist i fig. 1. Hver transaktion er planlagt og initieret af værtscontrolleren, som sender en transaktionstoken-pakke. Transaktionstokenet beskriver typen og retningen for overførslen, adressen på den valgte USB-enhed og slutpunktnummeret. Enheden adresseret af markøren genkender sin adresse og forbereder udveksling. Datakilden identificeret af tokenet transmitterer en datapakke. På dette tidspunkt afsluttes transaktioner relateret til isokrone overførsler - der er ingen kvittering for pakkemodtagelse. For andre typer transmissioner er der en bekræftelsesmekanisme, der sikrer garanteret levering af data. Pakkeformater er vist i fig. 2, er pakketyper i tabellen. I alle pakkefelter, undtagen CRC-feltet, sendes data med mindst signifikant bit først (den mindst signifikante bit er vist til venstre i tidsdiagrammer). Pakken begynder med Sync-sekvensen og slutter med terminatoren - EOP. Pakketypen bestemmes af PID-feltet. Formålet med de resterende felter er forklaret nedenfor. Længden af ​​Sync- og EOP-felterne er specificeret for transmissioner på FS/LS; for højhastighedstransmissioner udvides Sync-feltet til 32 bit-intervaller, og EOP til 8 (i SOF-pakker er EOP-feltet 40 bit langt ).

Alle modtagne pakker kontrolleres for fejl, som accepterede pakkeformater og visse konventioner tillader:

  • en pakke begynder med en synkroniseringssekvens efterfulgt af dens PID (Packet Identifier). Identifikationen efterfølges af dens omvendte kopi - Check. En uoverensstemmelse mellem to kopier betragtes som et tegn på fejl;
  • Pakkens krop (alle felter i pakken, undtagen PID og EOP-attributten) er beskyttet af en CRC-kode: 5-bit for markørpakker, 16-bit for datapakker. En CRC, der ikke matcher den forventede værdi, betragtes som en fejl;
  • pakken slutter med et specielt EOP-signal; Hvis pakken indeholder et ikke-heltal antal bytes, anses det for at være fejlagtigt. En falsk EOP, selv på en bytegrænse, vil ikke tillade, at pakken modtages på grund af en næsten uundgåelig CRC-fejl i denne situation;
  • pakkedata overføres til det fysiske lag (til bussen) ved hjælp af bit-stuffing (et nul indsættes efter seks en-bits), hvilket forhindrer tab af bitsynkronisering under et monotont signal. Modtagelse af mere end seks en bit i træk betragtes som en fejl (på HS - et tegn på slutningen af ​​rammen).

Detektering af nogen af ​​disse fejl i en pakke får modtageren til at betragte den som ugyldig. Hverken enheden eller værtscontrolleren reagerer på pakker modtaget med en fejl. Ved isokron transmission skal de ugyldige pakkedata blot ignoreres (de går tabt); For andre typer transmissioner anvendes midler til at sikre pålidelig levering.

For at detektere peerens manglende reaktion på en pakke, har hver enhed en timeouttæller, der stopper med at vente på et svar, efter at der er gået nogen tid. USB har en begrænsning på bussens rundturstid: tiden fra slutningen af ​​EOP for den genererede pakke, indtil begyndelsen af ​​svarpakken modtages. For slutenheden (og værtscontrolleren) normaliseres den maksimale svarforsinkelse (svartid) fra slutningen af ​​den sete EOP til introduktionen af ​​begyndelsen af ​​pakken. For hubs er pakketransmissionsforsinkelsen normaliseret; for kabler er signaludbredelsesforsinkelsen normaliseret. Timeout-tælleren skal tage højde for den maksimalt mulige forsinkelse for en gyldig buskonfiguration: op til 5 mellemliggende hubs, op til 5 meter hvert kabel. Den tilladte timeoutværdi, udtrykt i bitintervaller (bt), afhænger af hastigheden:

  • For FS/LS-hastigheder er forsinkelsen introduceret af et kabelsegment lille sammenlignet med bitintervallet (bt). Baseret på dette bruger USB 1.0 følgende model til at beregne tilladte forsinkelser. En tilladt forsinkelse på 30 ns er tildelt for hvert kabelsegment og 40 ns for navet. Således introducerer fem mellemliggende hubs med deres kabler en forsinkelse på 700 ns under en dobbelt omdrejning, hvilket svarer til cirka 8,5 bt på FS. For en FS-enhed bør responsforsinkelsen ikke overstige 6,5 bt (og med dens kabel - 7,5 bt). Baseret på dette kræver specifikationen, at sendere på FS bruger en timeout-tæller på 16-18 bt;
  • ved HS-hastighed er forsinkelsen i kabelsegmentet meget større end bitintervallet, og i USB 2.0 er beregningsmodellen lidt anderledes. Her tildeles 26 ns til hvert kabelsegment og 4 ns plus 36 bt til navet. At passere gennem 6 kabelsegmenter to gange (2×6×26 = 312 ns ≈ 150 bt) og fem hubs (2×5×4 = 40 ns ≈ 19 bt plus 2×5×36 = 360 bt) tager således op til 529 bt. Enhedens svarforsinkelse er acceptabel op til 192 bt, og den samlede forsinkelse under hensyntagen til kabler og hubs vil være op til 721 bt. Baseret på dette kræver specifikationen, at sendere på HS bruger en timeout-tæller på 736-816 bt.

Værtscontrolleren har sin egen fejltæller tilknyttet hvert endepunkt for alle enheder, som nulstilles, når hver transaktion er planlagt. Denne tæller tæller alle protokolfejl (inklusive timeout-fejl), og hvis antallet af fejl overstiger tærsklen (3), stoppes kanalen med dette endepunkt, og dens ejer (enhedsdriver eller USBD) får besked. Indtil tærsklen er overskredet, håndterer værten fejl for ikke-isokrone overførsler ved at forsøge at gentage transaktioner uden at underrette klientsoftwaren. Isokrone overførsler gentages ikke; værten rapporterer fejl med det samme.

Håndtrykspakker bruges til bekræftelse, flowkontrol og fejlsignalering. Af disse pakker kan værtscontrolleren kun sende en ACK-pakke til enheden, der bekræfter den fejlfri modtagelse af datapakken. Enheden bruger følgende håndtrykspakker til at svare værten:

ACK - bekræftelse (positiv) på vellykket gennemførelse af en output- eller kontroltransaktion;
NAK - negativ bekræftelse, er et tegn på, at enheden ikke er klar til at udføre denne transaktion (der er ingen data at sende til værten, der er ingen plads i bufferen til modtagelse, kontroloperationen er ikke afsluttet). Dette er et normalt svar, som ingen vil vide om undtagen værtscontrolleren, som er tvunget til at gentage transaktionen senere. I inputtransaktioner giver enheden et NAK-svar i stedet for en datapakke, hvis de ikke er klar;
STALL er en alvorlig fejlmeddelelse, der betyder, at uden speciel softwareintervention bliver det umuligt at arbejde med dette endepunkt. Dette svar kommunikeres til både USBD-driveren, som annullerer yderligere transaktioner med dette punkt, og til klientdriveren, hvorfra softwareintervention forventes at fjerne blokeringen af ​​punktet. I kontroltransaktioner (kontrol) betyder STALL-svaret, at anmodningen ikke kan udføres; Det er ikke nødvendigt at fjerne blokeringen af ​​punktet.

Output flow-kontrol, der udelukkende er afhængig af evnen til at reagere med en NAK, hvis enheden ikke er klar, er en meget ineffektiv brug af busbåndbredde: en stor pakke data spildes på bussen for at sikre, at enheden ikke er klar. I USB 2.0 undgås dette problem i Bulk-OUT- og kontroltransaktioner ved at bruge Ping-protokollen. Værten kan polle enhedens parathed til at modtage en maksimal pakkestørrelse ved at sende den et PING-sondetoken. Enheden kan reagere på dette token med en ACK (hvis klar) eller NAK (hvis den ikke kan modtage den maksimale pakkestørrelse). Et negativt svar vil tvinge værten til at prøve igen senere, et positivt svar vil tillade den at udføre en outputtransaktion. Til en tilbagetrækningstransaktion efter et positivt svar på testen er enhedens svar mere varierede:

  • ACK betyder vellykket modtagelse og parathed til at acceptere den næste pakke i fuld størrelse;
  • NYET betyder vellykket modtagelse, men ikke klar til næste pakke;
  • NAK er et uventet svar (det modsiger testens succes), men det er muligt, hvis enheden pludselig bliver midlertidigt utilgængelig.

Højhastighedsenheden i endepunktsbeskrivelserne rapporterer den mulige intensitet af NAK-afsendelser: bInterval-feltet for Bulk- og kontrolslutpunkter angiver antallet af mikrorammer pr. NAK (0 betyder, at enheden aldrig vil reagere med en NAK på en outputtransaktion).

Array-, interrupt- og kontroloverførsler sikrer pålidelig datalevering. Efter vellykket modtagelse af pakken sender datamodtageren en bekræftelse - en ACK-bekræftelsespakke. Hvis datamodtageren opdager en fejl, ignoreres pakken, og der sendes intet svar til den. Datakilden mener, at den næste pakke er blevet transmitteret med succes, når den modtager en ACK fra modtageren. Hvis bekræftelsen ikke ankommer, gentager kilden i den næste transaktion at sende den samme pakke. Imidlertid kan bekræftelsespakken gå tabt på grund af interferens; så at i dette tilfælde den gentagne afsendelse af pakken fra modtageren ikke opfattes som den næste del af data, er datapakkerne nummereret. Nummereringen er modulo 2 (1-bit nummer): pakker er opdelt i lige (med identifikator DATA0) og ulige (DATA1). For hvert endepunkt (undtagen isokron) har værten og enheden Toggle Bits, deres begyndelsestilstande er konsistente på den ene eller anden måde. IN- og OUT-transaktioner transmitterer og forventer datapakker med identifikatorer DATA0 eller DATA1, svarende til den aktuelle tilstand af disse bits. Datamodtageren skifter sin bit i tilfælde af fejlfri modtagelse af data med den forventede identifikator, datakilden skifter ved modtagelse af bekræftelse. Hvis modtageren modtager en fejlfri pakke med et uventet ID, sender den en ACK, men ignorerer dataene i pakken, fordi pakken er en gentransmission af data, der allerede er modtaget.

Transaktioner for forskellige typer overførsler har protokolforskelle på grund af garantien eller ikke-garantien for gennemløb, responstid, leveringssikkerhed og synkronisering af input og output. Afhængigt af disse karakteristika bruger transaktioner en eller anden af ​​de ovenfor beskrevne protokolmekanismer. Bemærk, at registrering af transmissionsfejl fungerer i alle transaktioner, så data modtaget ved en fejl ignoreres altid. Hvilke protokolmekanismer der bruges i den aktuelle transaktion er "kendt" af både værtscontrolleren (baseret på den tidligere modtagne slutpunktsbeskrivelse) og USB-enheden, hvori dette slutpunkt er implementeret.

Isokrone transaktioner giver garanterede valutakurser, men giver ikke pålidelig levering. Af denne grund er der ingen anerkendelser i protokollen, da pakkeafspilning vil få dataleveringsplaner til at mislykkes. Der er ingen bekræftelsesbaseret flowkontrol – enheden skal opretholde den trafikhastighed, der er angivet i den isokrone slutpunktsbeskrivelse.

Isokrone outputtransaktioner består af to pakker sendt af værtscontrolleren, et OUT-token og en DATA-datapakke. I en inputtransaktion sender værten et IN-token, som enheden svarer på med en datapakke, eventuelt med en datafeltlængde på nul (hvis der ikke er data klar). Ethvert andet svar fra enheden (såvel som "tavshed") betragtes af værten som en fejl, der fører til stop af denne kanal.

Med isokron udveksling er der kontrol over pålidelighed (kassering af pakker med fejl) og dataintegritet (registrering af en manglende pakke). Integritetskontrol er baseret på den strenge determinisme af valutakursen - i overensstemmelse med dens deskriptor forventer punktet en transaktion med en periode på 2bInterval-1 mikrorammer. For et typisk isokront endepunkt er kun én transaktion mulig pr. mikroramme, og en fejl ved modtagelse af en pakke resulterer i, at ingen modtagne data modtages i den mikroramme, hvori det var forventet. Pakkenummerering (Toggle Bit Switch) er således ikke påkrævet. Enheder med fuld hastighed og værtscontrollere bør kun sende pakker af typen DATA01. For bredbånds isokrone endepunkter (USB 2.0) kan op til tre datapakker transmitteres i hver mikroramme. Enhver af disse pakker kan gå tabt, og pakkenummerering i mikrorammen er påkrævet for at detektere denne situation. Til denne nummerering er to nye typer datapakker blevet introduceret: DATA2 og MDATA. De mange forskellige pakketyper giver dig udover nummerering også mulighed for at informere din kommunikationspartner om dine planer for en given mikroramme. I IN-transaktioner angiver enheden ved pakkeidentifikatoren, hvor mange flere pakker den har til hensigt at udstede i den samme mikroramme, hvilket gør det muligt for værten at undgå unødvendige inputforsøg. Så hvis en pakke transmitteres i en mikroramme, vil det være DATA0; hvis to, vil sekvensen være DATA1, DATA0; tre - DATA2, DATA1, DATA0. OUT-transaktioner bruger en MDATA (More Data)-pakke til at udlæse den ikke-sidste pakke i en mikroramme, og den sidste pakke-id angiver, hvor mange pakker der blev transmitteret før den. Så med en outputtransaktion bruges DATA0-pakken, med to - sekvensen MDATA, DATA1, med tre - MDATA, MDATA, DATA2. Alle transaktioner undtagen den sidste i en mikroramme skal bruge den maksimale pakkestørrelse. Bemærk, at andre transaktioner kan være klemt mellem bredbåndstransaktioner i en mikroramme.

I slutningen af ​​2008. Som man kunne forvente, har den nye standard øget gennemløbet, selvom stigningen ikke er så markant som 40x stigningen i hastigheden, når man flytter fra USB 1.1 til USB 2.0. Under alle omstændigheder er en 10x stigning i gennemløbet velkommen. USB 3.0 bakker op maksimal overførselshastighed på 5 Gbit/s. Gennemstrømningen er næsten dobbelt så høj som den moderne Serial ATA-standard (3 Gbit/s, når man tager overførsel af redundant information i betragtning).

USB 3.0 logo

Enhver entusiast vil bekræfte, at USB 2.0-grænsefladen er hovedflaskehalsen for moderne computere og bærbare computere, da dens maksimale "netto"-gennemstrømning varierer fra 30 til 35 MB/s. Men moderne 3,5"-harddiske til stationære pc'er har allerede overførselshastigheder på over 100 MB/s (2,5"-modeller til bærbare computere dukker også op, som nærmer sig dette niveau). Højhastigheds-solid-state-drev har med succes overskredet tærsklen på 200 MB/s. Og 5 Gbit/s (eller 5120 Mbit/s) svarer til 640 MB/s.

Vi tror ikke, at harddiske vil komme i nærheden af ​​600 MB/s i en overskuelig fremtid, men den næste generation af SSD'er kan overstige det antal i løbet af få år. Øget gennemstrømning bliver stadig vigtigere, efterhånden som mængden af ​​information stiger, og den tid, det tager at sikkerhedskopiere den, stiger tilsvarende. Jo hurtigere lagringen fungerer, jo kortere backup-tiden vil være, jo lettere bliver det at oprette "vinduer" i backup-planen.

USB 1.0 – 3.0 hastighed sammenligningstabel

Digitale videokameraer kan i dag optage og gemme gigabyte videodata. Andelen af ​​HD-videokameraer er stigende, og de kræver større og hurtigere lagring for at optage store mængder data. Hvis du bruger USB 2.0, vil det tage lang tid at overføre flere titusvis af gigabyte videodata til en computer til redigering. USB Implementers Forum mener, at båndbredde vil forblive fundamentalt vigtig, og USB 3.0 vil være tilstrækkeligt til alle forbrugerenheder i løbet af de næste fem år.

8/10 bit kodning

For at sikre pålidelig dataoverførsel USB 3.0 interface bruger 8/10 bit-kodning, som vi f.eks. kender fra Serial ATA. En byte (8 bit) transmitteres ved hjælp af 10-bit-kodning, hvilket forbedrer transmissionspålideligheden på bekostning af gennemløbet. Derfor udføres overgangen fra bits til bytes med et forhold på 10:1 i stedet for 8:1.

Sammenligning af USB 1.x – 3.0 båndbredde og konkurrenter

Strømbesparende tilstande

Sikkert, hovedmål interface USB 3.0 er at øge den tilgængelige båndbredde, dog den nye standard effektivt optimerer energiforbruget. USB 2.0-grænsefladen spørger konstant efter enhedens tilgængelighed, som forbruger energi. I modsætning hertil har USB 3.0 fire forbindelsestilstande, kaldet U0-U3. Forbindelsestilstanden U0 svarer til aktiv dataoverførsel, og U3 sætter enheden i "dvale".

Hvis forbindelsen er inaktiv, vil i tilstand U1 muligheden for at modtage og transmittere data være deaktiveret. Tilstand U2 går et skridt videre ved at deaktivere det interne ur. Følgelig kan tilsluttede enheder skifte til U1-tilstand umiddelbart efter dataoverførsel er afsluttet, hvilket forventes at give betydelige strømforbrugsfordele sammenlignet med USB 2.0.

Højere strøm

Ud over forskellige strømforbrugstilstande er standarden USB 3.0 er anderledes fra USB 2.0 og højere understøttet strøm. Hvis USB 2.0 gav en strømtærskel på 500 mA, så blev begrænsningen for den nye standard flyttet til 900 mA. Forbindelsesinitieringsstrømmen er blevet øget fra 100 mA for USB 2.0 til 150 mA for USB 3.0. Begge parametre er ret vigtige for bærbare harddiske, som normalt kræver lidt højere strøm. Tidligere kunne problemet løses ved at bruge et ekstra USB-stik, trække strøm fra to porte, men kun bruge én til dataoverførsel, selvom dette overtrådte USB 2.0-specifikationerne.

Nye kabler, stik, farvekodning

USB 3.0-standarden er bagudkompatibel med USB 2.0, det vil sige, at stikkene ser ud til at være de samme som almindelige Type A-stik. USB 2.0-benene forbliver på samme sted, men der er nu fem nye stifter placeret dybt i stikket. Det betyder, at du skal sætte USB 3.0-stikket helt ind i en USB 3.0-port for at sikre USB 3.0-drift, hvilket kræver yderligere ben. Ellers får du USB 2.0-hastighed. USB Implementers Forum anbefaler, at producenter bruger Pantone 300C farvekodning på indersiden af ​​stikket.

Situationen var den samme for USB type B-stikket, selvom forskellene er visuelt mere mærkbare. Et USB 3.0-stik kan identificeres med fem ekstra ben.

USB 3.0 bruger ikke fiberoptik, fordi det er for dyrt til massemarkedet. Derfor har vi det gode gamle kobberkabel. Den vil dog nu have ni snarere end fire ledninger. Datatransmission udføres over fire af de fem ekstra ledninger i differentialtilstand (SDP–Shielded Differential Pair). Et par ledninger er ansvarlige for at modtage information, det andet for at sende. Funktionsprincippet ligner Serial ATA, med enheder, der modtager fuld båndbredde i begge retninger. Den femte ledning er "jord".