O canal USB (Universal Serial Bus) baseia-se, como seu nome indica, numa arquitetura de tipo série. No entanto, é um interface de entrada/saída muito mais rápida do que as portas série padrão. A arquitetura de série foi utilizada para este tipo por duas razões principais: oferece ao usuário velocidade muito mais elevada do que a interface paralela, já que não suporta frequências muito altas (na arquitetura de alta velocidade, os bits que circulam por cada fio chegam atrasados, provocando erros), e os cabos série são bem mais baratos que os cabos paralelos.
A partir de 1995, o padrão USB foi desenvolvido para a conexão de uma grande variedade de dispositivos. O padrão USB 1.0 propõe dois modos de comunicação: o 12 Mb/s em modo de alta velocidade e o 1.5 Mb/s de baixa velocidade.
O padrão USB 1.1 oferece alguns esclarecimentos aos fabricantes de dispositivos USB mas não altera a velocidade. Os dispositivos certificados pelo padrão USB 1.1 têm o seguinte logotipo:
O padrão USB 2.0 permite alcançar velocidades de até 480 Mbit/s. Os dispositivos certificados pelo padrão USB 2.0 apresentam este logotipo:
Na ausência de logotipo, a melhor maneira de determinar se são periféricos USB de alta ou baixa velocidade é consultar a documentação do produto quando os conectores forem os mesmos.
A compatibilidade entre dispositivos USB 1.0, 1.1 e 2.0 está garantida. Contudo, o uso de um dispositivo USB 2.0 em uma porta USB de baixa velocidade (ou seja, 1.0 ou 1.1), limitará a velocidade a 12 Mbit/s, no máximo. Às vezes, o sistema operacional exibe mensagem que explica que a velocidade será restringida.
Existem três tipos de conectores USB: os conectores tipo A, cuja forma é retangular e servem para dispositivos que não exigem banda larga (teclado, mouse, webcam) e os conectores tipo B, cuja forma é quadrada e são utilizados principalmente para dispositivos de alta velocidade (discos rígidos externos, por exemplo) e os conectores do tipo C que não têm um lado certo para serem inseridos. Eles são reversíveis e menores comparados aos do tipo A e B (8,4 mm x 2,6 mm) e é justamente por esta razão que eles vem se estabelecendo como o padrão para os dispositivos móveis, pela compatibilidade com as portas micro-USB 2.0, presentes na maioria dos smartphones, por exemplo:
Representação do conector USB tipo C:
Uma característica da arquitetura USB é proporcionar a fonte de alimentação aos dispositivos que conecta, com limite máximo de 15 W por dispositivo. Para poder fazê-lo, ele utiliza um cabo com quatro fios (a massa GND, a alimentação VBUS e dois fios de dados chamados D- e D+):
O padrão USB permite a ligação dos dispositivos, utilizando uma topologia em barramento ou estrela. Os dispositivos podem, então, ser conectados em cadeia ou de forma ramificada.
A ramificação é feita com a ajuda de caixas chamadas hubs, comportando uma só entrada e várias saídas. Alguns são ativos (ou seja, fornecem energia elétrica) e outros passivos (a energia é fornecida pelo computador):
A comunicação entre o computador (host) e os dispositivos é feita de acordo com protocolo baseado no princípio do token ring. Isto significa que a banda larga é compartilhada temporariamente entre todos os dispositivos conectados. O host emite um sinal para iniciar a sequência de cada milissegundo, intervalo de tempo no qual oferecerá a cada dispositivo a oportunidade de ‘falar’.
Quando o host deseja se comunicar com um dispositivo, ele transmite uma rede (pacote de dados que contém o endereço do dispositivo codificado em 7 bits) que designa um dispositivo de tal maneira que é o host que decide ‘falar’ com os dispositivos.
Se o dispositivo reconhecer o seu endereço na rede, ele enviará um pacote de dados (entre 8 e 255 bytes) como resposta. Por outro lado, ele encaminha o pacote para os outros dispositivos conectados. Os dados trocados desta maneira serão codificados de acordo com a codificação NRZI.
Como o endereço foi codificado em 7 bits, 128 dispositivos (2^7) podem ser conectados simultaneamente a uma porta deste tipo. Na realidade, é recomendado reduzir esta quantidade para 127 porque o endereço 0 é um endereço reservado (veja abaixo).
Com um comprimento de cabo de no máximo cinco metros entre dois dispositivos e a quantidade máxima de cinco concentradores (hubs), é possível criar uma cadeia de até 25 metros.
As portas USB suportam dispositivos Hot Plug and Play. Assim, os dispositivos podem ser conectados sem desligar o computador. Quando um dispositivo está conectado ao host, este último detecta a adição do novo elemento pela mudança da tensão entre os fios D+ e D-.
Neste momento, o computador envia um sinal de inicialização ao dispositivo durante 10 milissegundos para depois fornecer energia através aos fios GND e VBUS (até 100 mA). Em seguida, o dispositivo é alimentado pela corrente elétrica e recupera temporariamente o endereço padrão (o endereço 0).
A etapa seguinte consiste em fornecer o endereço definitivo (procedimento de enumeração). Para tal, o computador interroga os dispositivos já conectados para conhecer seus endereços e atribui um novo que, por sua vez, o identifica. Quando o host dispuser de todos os requisitos necessários, ele poderá carregar o driver adequado.