elomax

[ Techniek ] [ Shop ] [ Site map
[ Algemeen ] Hardware ] Software ] Producten ]

Terug
Omhoog

Wat is USB?

USB is een afkorting voor ‘Universal Serial Bus’. Deze term staat voor een bus waarop gegevens in seriële vorm worden overgedragen, en die zo universeel is opgezet dat er allerlei verschillende apparaten op kunnen worden aangesloten.

De bus is ontwikkeld door een consortium van fabrikanten, waaronder Microsoft, Intel, IBM en Compaq. De bedoeling was om een oplossing te bieden voor de problemen waarmee PC gebruikers geconfronteerd kunnen worden bij het aansluiten van randapparatuur aan hun computer. Door randapparatuur via USB aan te sluiten, kunnen een aantal wezenlijke voordelen worden behaald:

  • De achterkant van een gemiddelde PC is een wirwar van snoeren, met daaraan allerlei verschillende stekkers. Als alle randapparatuur via USB wordt aangesloten, dan blijft er nog slechts één soort snoer over, waarmee alle apparaten met de PC kunnen worden verbonden. Dit zal niet alleen de overzichtelijkheid sterk bevorderen, maar bovendien is USB zodanig uitgedacht dat het niet mogelijk is een verkeerde aansluiting te maken.

  • Installeren van een nieuw apparaat is met USB een kwestie van uitpakken en inpluggen. Daarna zal de PC het nieuwe apparaat zelfstandig ontdekken en automatisch om de bijbehorende software vragen.

  • Er kunnen op USB tot 127 apparaten tegelijkertijd worden aangesloten. Dit is heel wat meer dan er op een PC zonder USB aangesloten kunnen worden.

  • Een apparaat dat via USB wordt aangesloten, heeft nooit een eigen insteek kaart nodig. De systeemkast hoeft dus niet open, en er worden geen vrije slots in beslag genomen. Er zijn ook geen eigen interrupts, DMA kanalen of I/O adressen nodig. Het nare probleem van conflicten op dat gebied wordt hiermee uit de wereld geholpen.

  • USB staat toe dat apparaten worden aangesloten of weggehaald terwijl de PC volop in bedrijf is. Het operating system zal dit automatisch opmerken, en de juiste actie ondernemen. Bijvoorbeeld door de juiste drivers te laden.

Snelheid

USB is zijn bestaan begonnen als USB 1. Deze standaard beschreef twee snelheden:

  • low speed (1.5 Mb/s)

  • full speed (12 Mb/s)

De full-speed snelheid werd ten tijde van USB 1 ook wel 'high speed' genoemd. De huidige stand van zaken is USB 2.  Deze standaard omvat de oudere USB 1 standaard, en voegt daar een snellere optie aan toe. Op USB 2 kunnen ook USB 1 compatibele apparaten worden aangesloten. De snelheden van USB 2 zijn:

  • low speed (1.5 Mb/s)

  • full speed (12 Mb/s)

  • high speed (480 Mb/s)

Een apparaat dat USB 2 compatibel is, hoeft dus niet noodzakelijk op de maximale snelheid te communiceren. De standaard beschrijft drie snelheden en een fabrikant kan zelf bepalen welke snelheid het meest geschikt is voor het betreffende apparaat.

Om de verwarring compleet te maken, gebruiken fabrikanten soms de aanduiding 'full-speed USB 2' waarmee de suggestie gewekt wordt dat het apparaat met 480 Mb/s zou communiceren. In een poging hier enige structuur in aan te brengen heeft de USB commissie aangeraden op verpakkingen alleen de termen 'USB' te gebruiken voor low- en full speed apparaten, en 'Hi-Speed USB' voor apparaten die op de volle 480 Mb/s werken.

Low speed

Low speed apparaten zijn bijvoorbeeld een muis, een joystick of een keyboard. Deze hebben relatief weinig data te versturen, en kunnen toe met een klein deel van de capaciteit van de bus. De snelheid waarmee deze apparaten over de bus kunnen communiceren is beperkt tot maximaal 1.5 Mb per seconde.

Full speed

Full speed apparaten zijn bijvoorbeeld een printer, een scanner of een stel USB luidsprekers. Deze apparaten hebben regelmatig veel data te versturen of te ontvangen, en krijgen dan een groot deel van de beschikbare capaciteit op de bus toegewezen. Full speed apparaten kunnen communiceren met een snelheid van 12 Mb per seconde.

High speed

High speed apparaten zijn apparaten die de maximale bandbreedte nodig hebben. Bijvoorbeeld een externe hard disk of een CD brander. High speed apparaten kunnen communiceren met een snelheid van 480 Mb per seconde.

USB apparaten aansluiten

De meeste PC’s hebben twee of meer aansluitingen voor een USB kabel. Als er meer aansluitingen nodig zijn dan op de PC al aanwezig, dan moet er een verdeeldoosje worden gebruikt. Zo’n verdeeldoos (een ‘hub’) wordt in plaats van een gewoon apparaat op de USB aansluiting van de PC aangesloten, en levert dan een aantal (meestal vier) nieuwe USB aansluitingen op. Een hub is geen passief ding, maar bevat alle elektronica die nodig is om de aangesloten USB apparaten te beheren. In feite bevat de hub een groot deel van de functies die nodig zijn om de USB bus goed te laten functioneren, en is de USB aansluiting op een PC eigenlijk ook een hub (de zogenaamde ‘root-hub’).

HUBs

Elk USB apparaat wordt dus op een hub aangesloten, en als er nog meer aansluitingen nodig zijn, kan op een bestaande hub weer een nieuwe hub worden aangesloten. Natuurlijk kan dit niet steeds maar doorgaan. Vanaf de PC mag er maximaal vier niveau’s verder gegaan worden. Dus maximaal kan de USB vanaf de PC naar een hub worden gevoerd, van daaruit naar nog een hub, en van daaruit naar nog weer een hub. Op deze laatste hub mogen alleen nog apparaten worden aangesloten.

Een USB 1 hub kan op de USB 2 bus worden aangesloten, maar dan kunnen er vanzelfsprekend alleen low- en full speed  apparaten op die hub worden aangesloten. High-speed apparaten (480 M/s) moeten een volledig USB 2 compatibel toegangspad hebben tot de USB 2 compatibele aansluiting op de PC.

Hubs zijn los te koop, maar zijn ook vaak ingebouwd in een wat groter apparaat dat een USB aansluiting heeft. Heel handig zijn bijvoorbeeld beeldschermen met ingebouwde hub. Het beeldscherm zelf wordt dan bestuurd via USB, en geeft meteen de mogelijkheid een aantal andere USB apparaten aan te sluiten.

Configuratie

Als een apparaat op de USB bus wordt aangesloten, moet de betreffende hub weten met welke snelheid het apparaat kan worden benaderd. De hub kan herkennen of het een low-speed (1.5Mb per seconde)  apparaat betreft, omdat een low-speed apparaat een pull-up weerstand op de D- lijn heeft. Zodra de snelheid waarmee het apparaat communiceert bekend is, kan er data transport plaatsvinden.

Alle USB apparaten hebben een tabel aan boord waarin de basisgegevens staan die nodig zijn om het apparaat te herkennen. Deze tabel kan door de host worden uitgelezen. Daardoor krijgt de host gegevens over het soort apparaat, de fabrikant, het type, etc. Aan de hand van deze gegevens kan de host de juiste drivers laden. Als deze geladen zijn, krijgt het apparaat van de host een eigen nummer, waarmee het op de USB bus geadresseerd kan worden. Dat adres wordt vanaf dat moment bij alle communicatie tussen de host en het apparaat gebruikt.

Software

USB wordt op Windows machines niet ondersteund op operating systems vóór Windows ’95 OSR2.5 (dit is OSR2.1, met een speciale USB uitbreiding die los geinstalleerd moet worden.) De OSR-versies (‘OEM Service Release’) zijn niet los te koop, maar konden alleen worden geleverd bij aanschaf van een nieuwe PC.

Als USB gebruikt gaat worden, verdient het zonder meer aanbeveling om Windows XP te installeren. Windows geeft vanaf '98 volledige ondersteuning van USB.

Meer informatie over de software vindt u hier.

Drivers

Als een apparaat herkend is door Windows, gaat Windows een bijbehorende driver zoeken. Als die niet op de hard disk gevonden kan worden, wordt de gebruiker om een driver gevraagd. Als deze eenmaal een keer geinstalleerd is, weet Windows welke driver bij het betreffende apparaat hoort, en zal deze voortaan laden als het apparaat wordt aangesloten.

Elk apparaat zou dus een eigen driver moeten hebben. Alle fabrikanten van muizen, joysticks, keyboards, etc zouden dan eigen drivers moeten schrijven voor al hun producten. Aangezien zeer veel apparaten erg veel op elkaar lijken, zou dit niet erg efficiënt zijn. Voor dit type apparaten (HID apparaten, Human Interface Devices) is dan ook een alternatief geboden.

Voor apparaten die de interface tussen de gebruiker en het systeem vormen, is een aparte klasse opgesteld. Hiertoe behoren onder andere:

  • Keyboard

  • Muis

  • Joystick

  • Monitor

  • etc…

Voor apparaten van dit type heeft Windows (vanaf Windows ’98, dus NIET Windows ’95 OSR2.5) eigen drivers aan boord.

Bij aansluiten wordt een HID apparaat herkend door een speciale verwijzing in de configuratie tabel die bij aansluiten uit het apparaat wordt opgehaald. Deze verwijzing laat Windows weten dat het met een HID apparaat van doen heeft. Windows zal dan niet om een specifieke driver vragen, maar zal nog meer tabellen uit het apparaat ophalen, om uit te vissen wat voor soort apparaat het is, welke inputs het apparaat kan leveren, welke outputs er zijn, etc. Dus de beschrijving van wat het apparaat allemaal precies kan is opgeslagen in tabellen in het apparaat zelf. De wijze waarop de tabellen vorm gegeven moeten worden is vastgelegd in een specificatie.

Als er speciale drivers in Windows moeten worden geladen om een apparaat te besturen, kan dit apparaat nooit worden gebruikt voordat Windows is geladen en actief is. Dit is een probleem bij apparaten zoals een keyboard. Dit moet al meteen beschikbaar zijn nadat de PC is aangezet, en al voordat Windows compleet geladen is.

Ook hier biedt de HID specificatie een oplossing. Het BIOS kan de allernoodzakelijkste code bevatten voor het aansturen van bijvoorbeeld een HID keyboard. Deze code zal dan werken met elk keyboard dat volgens de HID specificatie is gebouwd, zonder dat voor elk type een eigen driver nodig is.

 

© 2005...2008 Elomax [Voorwaarden ]