USB (acronimo di Universal Serial Bus, pronunciato ) è uno standard industriale di comunicazione seriale, utilizzato sotto forma di cavo, per la comunicazione e/o l'alimentazione di periferiche per computer o qualsiasi altro dispositivo previsto a tale scopo, per esempio tablet, fotocamere, smartphone, ecc.
Le versioni standard sono le USB Tipo-A e le USB Tipo-B. Dal 2014 nei nuovi dispositivi è utilizzata anche una versione più veloce: la USB-C.
Storia
Un gruppo di sette società iniziò lo sviluppo di USB nel 1994: Compaq, Hewlett-Packard, IBM, Microsoft, NEC e Nortel. L'obiettivo era rendere fondamentalmente più semplice il collegamento di dispositivi esterni ai PC sostituendo la moltitudine di connettori sul retro dei PC, affrontando i problemi di usabilità delle interfacce esistenti e semplificando la configurazione software di tutti i dispositivi collegati a USB, oltre a consentire una maggiore velocità dati per dispositivi esterni. Ajay Bhatt e il suo team hanno lavorato allo standard alla Intel; i primi circuiti integrati che supportano USB sono stati prodotti nel 1995.
La specifica USB 1.0 è stata introdotta nel gennaio 1996. Il primo supporto software OEM per dispositivi USB è stato fornito dalla versione OSR 2.1 di Microsoft Windows 95. Nel 1998 l'iMac G3 è stato il primo prodotto mainstream con USB, il quale ha contribuito a rendere popolare lo standard. La decisione di Apple di rimuovere tutte le legacy port dall'iMac, per esempio le interfacce seriali RS-232, la porta ADB per tastiera e mouse, la porta SCSI per i dischi, ecc.Alcune di queste vengono ancora utilizzate nel settore industriale, p.e. l'interfaccia RS-232. è stata seguita da molti produttori di PC, portando ad una maggiore diffusione dello standard.
La specifica USB 2.0 è stata pubblicata nell'aprile 2000 ed è stata ratificata dal USB Implementers Forum (USB-IF) alla fine del 2001. Hewlett-Packard, Intel, Lucent Technologies, NEC e Philips hanno guidato congiuntamente l'iniziativa per sviluppare una velocità di trasferimento dati più elevata. La specifica USB 3.0 è stata pubblicata il 12 novembre 2008. La specifica USB 3.1 è stata invece pubblicata nel luglio 2013.
Nel dicembre 2014, USB-IF ha presentato le specifiche USB 3.1, USB Power Delivery 2.0 e USB-C a IEC (TC 100 - Sistemi e apparecchiature audio, video e multimediali) per l'inclusione nello standard internazionale IEC 62680 (interfacce Universal Serial Bus per dati e alimentazione), basato su USB 2.0. Le specifiche USB 3.2 sono state pubblicate a settembre 2017.
Descrizione generale
Lo standard USB definisce le specifiche per cavi, connettori e protocolli per la connessione, la comunicazione e l'alimentazione tra dispositivi e le loro periferiche.
La tensione di alimentazione prevista dallo standard di base è 5 volt; ma opzionalmente, i dispositivi che seguono lo standard USB Power Delivery UPD, implementano uno schema di alimentazione flessibile che attraverso un canale di comunicazione dati con l'alimentatore, permette loro di richiedere un certo livello di tensione di alimentazione che può essere 5V, 9V, 15V, o 20V, o anche 50V. Oltre a migliorare la funzionalità Plug and Play, consentendo così di collegare e scollegare periferiche senza dover riavviare il computer (hot swap), USB ha definitivamente rimpiazzato tutte quelle interfacce precedenti che non sarebbero mai riuscite a competere con le tecnologie allora disponibili (porte seriali e porte parallele sono un valido esempio).
Il sistema USB è asimmetrico: consiste in un singolo gestore (host) e molte periferiche (device) collegate ad albero, attraverso dei dispositivi chiamati hub (concentratori). Supporta fino a un massimo di 127 periferiche per gestore, ma nel conteggio vanno inclusi anche gli hub e il gestore stesso, quindi, in realtà, il numero totale di dispositivi collegabili è sensibilmente inferiore. La lunghezza massima che può avere un cavo USB senza che il segnale diventi troppo debole è pari a 5 m; oltre questo limite, è necessario ricorrere a uno o più hub attivi che amplifichino il segnale. Le specifiche prevedono il collegamento consecutivo di un massimo di 5 hub; nonostante ciò dispositivi come mouse e similari non hanno problemi.
Lo standard prevede che il connettore porti anche un cavo (chiamato VBUS) per alimentare le periferiche a basso consumo. Le periferiche che hanno richieste energetiche elevate devono essere alimentate a parte. I limiti energetici dello standard vanno seguiti scrupolosamente, pena il probabile danneggiamento del gestore, dato che lo standard USB non prevede nelle specifiche minime la disconnessione in caso di sovraccarico.
Il disegno dell'USB è stato pensato per consentire un semplice inserimento e rimozione. Lo standard è stato progettato in modo da consentire un semplice aggiornamento dei sistemi sprovvisti di USB attraverso una scheda PCI ISA o PC Card. Le porte USB sono dotate del supporto del Plug and play e supportano i dispositivi hot swap: se il sistema operativo lo consente, supportano la rimozione "a caldo" delle periferiche e il reinserimento senza dover riavviare il computer.
L'USB di tipo A e B può collegare periferiche che richiedono trasferimento dati, ma non può trasportare segnali video, tale limite è stato comunque superato con il nuovo formato USB 3.1 Type-C. Per i componenti multimediali, ormai, lo standard USB è il metodo di collegamento più utilizzato, mentre nelle stampanti sopravvivono ancora pochi modelli dotati anche di porta parallela per questioni di compatibilità.
A partire dagli anni 2000 anche gli autoveicoli (in primis le automobili) sono stati dotati di connessioni USB per l'impianto stereo o per quello di navigazione GPS o, per i modelli di lusso, gli impianti video/TV. In alcune situazioni, tramite chiavetta USB si può aggiornare il firmware di alcuni moduli dell'automobile, ad esempio il bluetooth. In questo modo la compatibilità dei driver tra dispositivi interconnessi è costantemente assicurata.
In aggiunta al tradizionale settore elettronico-informatico-telematico, appare costantemente sul mercato tutta una serie di apparecchi, dispositivi o accessori alimentati tramite presa USBOvviamente, devono essere apparecchi a basso consumo di energia. e qualsiasi elencazione correrebbe il rischio di essere obsoleta quanto prima.
Nome Versione Velocità teorica Velocità reale Data di pubblicazione Low-Speed USB 1.0 (187,5 kB/s) (125 kB/s) Gennaio 1996 Full-Speed USB 1.1 (1,5 MB/s) (875 kB/s) Agosto 1998 Hi-Speed USB 2.0 (60 MB/s) (35 MB/s) Aprile 2000 SuperSpeed USB USB 3.1 Gen 1x1 (USB 3.0) (625 MB/s) (400 MB/s) Novembre 2008 SuperSpeed USB 10Gbps USB 3.1 Gen 2x1 (USB 3.1 Gen 2) (1,25 GB/s) (900 MB/s) Luglio 2013 SuperSpeed USB 20Gbps USB 3.2 Gen 2x2 (2,5 GB/s) N/A Settembre 2017 USB4 <small> N/A Agosto 2019 USB4 2.0 <small> N/A Settembre 2022
Le specifiche dell'USB stabiliscono due tipi di connettori per collegare i dispositivi: il connettore A e il connettore B. Alcuni produttori hanno introdotto delle varianti del connettore per i loro dispositivi miniaturizzati. Questi dispositivi rispettano comunque lo standard di comunicazione USB a tutti gli effetti, con l'unica differenza che il connettore è fisicamente diverso. Essi sono chiamati micro-USB o mini-USB di tipo A e B. Con l'USB 3.1 è stato introdotto il connettore USB-C, il primo connettore USB reversibile.
Un'estensione dell'USB, chiamata USB-On-The-Go (OTG), consente a una singola porta di fungere sia da dispositivo sia da controllore. Ciò consente una più semplice connessione di alcuni dispositivi, come i PDA, che a volte devono fungere da dispositivo e a volte devono comandarne. Per evitare una proliferazione dei connettori proprietari, USB-On-The-Go ha definito anche due connettori chiamati mini-A e mini-B, che sono connettori molto più piccoli dei connettori precedenti; questo rimuove la principale motivazione dei produttori a ignorare lo standard, cioè risparmiare spazio.
Specifiche tecniche Piedinatura
Di seguito viene illustrato uno schema che esemplifica la disposizione dei pin di contatto, e la loro funzione, dei connettori USB.
Piedinatura del connettore USB: PinNome segnaleColore filoDescrizione 1 VBUS + 5 V 2 D- Data − 3 D+ Data + 4 GND GND Piedinatura del connettore micro/mini USB: Pin Nome segnale Colore filo Descrizione 1 VBUS + 5V 2 D- Data − 3 D+ Data + 4 ID Interconnessione Mini/Micro A e B Tipo A connesso a GND Tipo B non connesso OTG connesso a GND (all'interno del connettore che andrà collegato al dispositivo che fungerà da HOST) 5 GND GND Pin aggiuntivi introdotti dall'USB 3.0: PinNome segnaleDescrizione 6 SSTX+ Il trasferimento dei dati dall'host al dispositivo 7 SSTX− SSTX+ ritorno 8 GND GND 9 SSRX+ Il trasferimento dei dati dal dispositivo all'host10 SSRX− SSRX+ ritorno Pin aggiuntivi introdotti nel connettore tipo C: Nome segnaleDescrizione 11 VBUS + 12V 12 VBUS + 20V
Latenza La latenza dell'USB 1.x è di circa 1ms, la latenza dell'USB 2.0 è di circa 125 µs, invece con l'USB 3.0, solo però con i pin SSTX e SSRX è di circa 950 ns.
Classi di dispositivi La funzionalità di un dispositivo USB è definita da un codice di classe inviato a un host USB. Ciò consente all'host di caricare moduli software per il dispositivo e di supportare nuovi dispositivi di diversi produttori senza la necessità di un driver specifico.
Le classi di dispositivi sono le seguenti:
Classe Uso Descrizioni Esempi ed eccezioni 00h Dispositivo Non specificato La classe del dispositivo non è specificata, i descrittori di interfaccia vengono utilizzati per determinare i driver necessari 01h Interfaccia Audio (UAC) Altoparlanti, microfoni, schede audio, MIDI 02h Interfaccia Communications and CDC Control Adattatori UART e RS-232, Modem, adattatori Wi-Fi, adattatori Ethernet. Usato insieme alla classe 0Ah (CDC-Data) più in basso 03h Interfaccia Dispositivi di interfaccia uomo-macchina (HID) Tastiere, mouse, joystick 05h Interfaccia Physical interface device (PID) Joystick con Force feedback 06h Interfaccia Immagine (PTP/MTP) Scanner, lettori multimediali 07h Interfaccia Stampante 08h Interfaccia Memoria di massa USB, USB Attached SCSI chiavi USB, lettori di schede di memoria, lettori multimediali, fotocamera digitale, disco rigido esterno, disk enclosure 09h Dispositivo hub USB hub USB ad alta velocità 0Ah Interfaccia CDC-Data Usata insieme alla classe 02h (Communications and CDC Control) sopra 0Bh Interfaccia Smart card Lettore USB di smart card 0Dh Interfaccia Sicurezza Lettore di impronta digitale 0Eh Interfaccia Video (UVC) Webcam 0Fh Interfaccia Dispositivi sanitari personali (PHDC) Pulsiossimetro 10h Interfaccia Audio/Video (AV) Webcam, Televisore 11h Dispositivo Billboard Descrive le modalità alternative USB-C supportate dal dispositivo DCh Entrambi Dispositivo diagnostico Dispositivo di test di conformità USB E0h Interfaccia Controllore wireless Adattatori Bluetooth, Microsoft RNDIS EFh Entrambi Varie Dispositivo ActiveSync FEh Interfaccia Specifico dell'applicazione Bridge IrDA, classe di prove e misurazioni (USBTMC), USB DFU (aggiornamento del firmware del dispositivo) FFh Entrambi Specifico del produttore Indica che il dispositivo necessita di driver specifici del fornitore
Connettori Le prime tipologie sono state l'USB-A e l'USB-B, successive evoluzione venne rappresentata dall'USB On-The-Go.
Micro-USB