Från oracle wiki (USB-styrenhet):

USB-värdkontrollen har ett inbäddat nav som kallas rotnavet. Portarna som syns på systemets bakpanel är rotnavets portar.

Vad jag förstår av detta är att rotnavet bara är är en punkt där alla USB-nav kommer samman.

-Är rotnavet en hårdvara, eller är det en term som används för att beteckna den punkt där all data från USB-enheter kommer samman?

-Det finns olika typer av gränssnitt mellan rotnavet och styrenheten (UHCI, OHCI, EHCI). Är det då korrekt att tänka på styrenheten som en ”mellanman” mellan rotnavet och den faktiska datorn?

Svar

Du kan ha mer än ett rotnav, så nej, det är inte den punkt där alla nav samlas. Det kanske vara mer bekvämt att tänka på rotnav som en av de många utgångspunkterna för uppräkning.

Rotnav är en hårdvara. Mer specifikt är det en del av värdkontrollen (som i sig kan vara antingen separat chip eller en del av chipset).

Gränssnitten som du nämner är Host Controller Interfaces (HCI), dvs gränssnitt för host controller, inte root hub. I grund och botten är de register som programvaran kan komma åt för att kommunicera med värdkontrollen.

Från ovanstående tror jag inte att termen ”mellanhand” är tillämplig som du föreställde den.

UPPDATERING :

Här är en enkel analog för att illustrera förhållanden:

Ett fordon är en styrenhet. Det har ett gränssnitt (pedaler) som programvara (förare) kan använda för att styra styrenheten. Den har också en motor (rotnav) som utför väsentlig del av bilfunktionaliteten.

Du kan säga att föraren kör en motor med pedaler, och det skulle vara korrekt men inte exakt, eftersom det finns en hel del mellan pedalerna och en motor. Dessa delar motsvarar interna logiska kretsar hos styrenheten.

Så, mer exakt uttalande skulle vara ”föraren styr bilen med pedaler, styrning hjul och en pinne, och eftersom motorn är en del av bilen gör den sitt jobb i hela körprocessen. ”I datortermer som skulle översättas till” styr programvaran värdstyrenhet som använder HCI, och eftersom root-hub är en del av värdkontrollern gör den sitt jobb för att stödja USB-kommunikation ”.

Kommentarer

  • Så Host Controller är ett chip som kommunicerar med programvara via värdkontrollgränssnittet (HCI) och det chipet är också anslutet till en eller flera root-hubbar så att data kan överföras mellan USB-enheten och controller (och från controller till programvara)?
  • Du förstod det nästan. Värdkontrollern är inte " ansluten " till rotnav, rotnavet är en del av styrenheten. Och eftersom datorer vanligtvis har flera styrenheter (inbyggda i chipset samt separata marker på moderkortet) har du idag flera rotnav i ditt system. Jag ' Jag uppdaterar svaret med bättre förklaring.

Svar

En vanlig USB-hubb är en USB enhet som kan dela USB-trafik från en (uppströms) länk till flera nedströms portar, och mux den kommande trafiken från många hamnar till en uppströms. För att göra det har varje nav ett speciellt styrrör som styr portfunktioner som anslutning / frånkoppling / avstängning / återupptagning / avaktivering etc. Dessa funktioner styrs via USB-typkontrolltransaktioner, som riktas till varje enskild port, alla med USB-paket -token-protokoll. Det här protokollet fungerar upp till alla giltiga nivåer för navstapling, och varje port har väldefinierade statusbitar inom USB-svar.

En rotnav utför en liknande funktion, förutom (a) uppströms associeras direkt med värden styrrör / buss och (b) olika statusbitar för varje port kartläggs direkt i 32-bitarsregister i värd-PCI-utrymme. Det här är en hårdvara.

För att upprätthålla bitvis kompatibilitet mellan ALLA portar i USB-trädet och ge universell åtkomst till alla portar har värddatorns drivrutinsprogramvara vanligtvis ett speciellt lager som konverterar de registerbaserade portkontrollstatuserna (PORTSC ) till standardformat för USB-portstatus. Detta illustreras i följande Microsoft-dokumentation .

ange bildbeskrivning här

där det inringade lagret, tror jag, ger denna portstatusöversättning. Därefter känner systemet ingen skillnad mellan en rotnavport och någon vanlig navport.

Svar

Detta är en implementeringsdetalj , för det mesta.

USB-hubbar implementerar detektering av insättning / borttagning, portkontroll och uppströms sidan av uppräkningsprotokollet som används innan enheten tilldelas ett nummer.

Samma funktionalitet krävs för varje USB-nedströmsport, oavsett om den är direkt ansluten till styrenheten eller en del av en separat enhet, och det skulle vara dumt att ha två olika specifikationer.

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *