USB Comunicação e tratamento de erros

download USB Comunicação e tratamento de erros

of 23

Transcript of USB Comunicação e tratamento de erros

  • 8/6/2019 USB Comunicao e tratamento de erros

    1/23

    USB Comunicao e tratamentode erros

    Rudimar Grass

    Henrique Linhares

    Arthur Cunha

    Arquitetura de Computadores II

  • 8/6/2019 USB Comunicao e tratamento de erros

    2/23

    USBComunicao

    A comunicao entre os dispositivos conectados viaUSB feita

    atravs de um protocolo. Nele, o host, isto , o computador ou oequipamento que recebe as conexes, emite um sinal para encontrar

    os dispositivos conectados e estabelece um endereo para cada um

    deles, lembrando que at 127 dispositivos podem ser endereados.

    Cada dispositivo tem um endereo nico, que atribudo pelosoftware do sistema USB durante a configurao, para evitar

    conflitos.

  • 8/6/2019 USB Comunicao e tratamento de erros

    3/23

    USBComunicao

    A comunicao entre dispositivos e software de cliente feita por

    pipes (tubos).

    Cada tubo um canal de comunicao entre o software no host e

    um endpoint de um dispositivo.

    Cada endpoint representa uma parte de um dispositivo que cumpre

    uma finalidade especfica para esse dispositivo, como para recebercomandos ou transmitir dados.

    Um dispositivo de alta velocidade pode ter at 16 parmetros,

    embora os dispositivos de baixa velocidade podem ter apenas trs.

  • 8/6/2019 USB Comunicao e tratamento de erros

    4/23

    USBComunicao

    Aps conectado, o dispositivo detectado. O software usa USBD(endpoint 0) para inicializar o dispositivo, executando um driver genrico

    para obter informaes sobre os outros parmetros fornecidos pelo

    aparelho.

    Endpoints so caracterizados pelo seu nmero de endpoint, (definida no

    momento da concepo) largura de banda, freqncia de acesso, latncia,requisitos de erro e de manipulao de comportamento.

  • 8/6/2019 USB Comunicao e tratamento de erros

    5/23

    USBComunicao

    AUSB 1.1 funciona com taxa de transmisso de at 1,5 Mbps (Low-Speed),

    ou seja, de cerca de 190 KB por segundo. Por sua vez, nas conexes mais

    rpidas, esse valor de at 12 Mbps (Full-Speed), cerca de 1,5 MB por

    segundo.

    O USB 2.0 funciona com velocidade de 480 Mbps, o equivalente a cerca de

    60 MB por segundo. O padro de conexo continua sendo o mesmo daverso anterior. Alm disso, o USB 2.0 totalmente compatvel com

    dispositivos que funcionam com o USB 1.1. No entanto, nestes casos, a

    velocidade da transferncia de dados ser a deste ltimo.

  • 8/6/2019 USB Comunicao e tratamento de erros

    6/23

    USBComunicao

    Uma vez que os pontos de extremidadede um dispositivo foram identificados e

    configurados, os (pipes) tubos entram em

    ao permitindo que o software cliente se

    comunique com o dispositivo.

  • 8/6/2019 USB Comunicao e tratamento de erros

    7/23

    USB- Comunicao

    Uma vez estabelecida a comunicao, o host recebe a informao de que

    tipo de conexo o dispositivo conectado utiliza. H quatro possibilidades:

    Todas os tipos de comunicao assumem forma de pacotes, que contm

    informaes de controle, dados e campos de verificao de erros.

    Bulk

    Control

    Interrupt

    Isochronous

  • 8/6/2019 USB Comunicao e tratamento de erros

    8/23

    Bulk

    Utilizado por dispositivos que lidam com

    grandes volumes de dados, como impressoras

    e scanners, por exemplo.

    Conta com recursos de deteco de erro para

    garantir a integridade das informaestransmitidas.

    USB - Comunicao

  • 8/6/2019 USB Comunicao e tratamento de erros

    9/23

    Control

    Utilizado para transmisso de

    parmetros de controle e configurao

    do dispositivo.

    USB - Comunicao

  • 8/6/2019 USB Comunicao e tratamento de erros

    10/23

    USB- Comunicao

    Interrupt

    Utilizado para dispositivos que

    transferem poucos dados, como

    mouses, teclados e joysticks.

  • 8/6/2019 USB Comunicao e tratamento de erros

    11/23

    Isochronous

    Aplicado em transmisses contnuas, onde os

    dados so transferidos a todo o momento, razo

    pela qual no h recursos de deteco de erros, j

    que isso atrasaria a comunicao. Dispositivos

    como caixas de som utilizam esse modo.

    USB- Comunicao

  • 8/6/2019 USB Comunicao e tratamento de erros

    12/23

    USBComunicao

    USB estabelece uma classe de cdigos usados para identificar a funcionalidade de dispositivose carregar os cdigos de driver baseados na determinada funcionalidade.

    Classes dos Dispositivos:

    Classe Uso Descrio Exemplos

    01h Interface Audio Speaker, microphone, sound card, MIDI

    03h Interface Human Interface Device (HID) Keyboard, mouse, joystick

    06h Interface Image Webcam, scanner

    07h Interface Printer Laser printer, inkjet printer, CNC machine

    08h Interface Mass storage USB flash drive, memory card reader.09h Device USB hub Full bandwidth hub

    0Eh Interface Video Webcam

    0Fh Interface Personal Healthcare Pulse monitor (watch)

    DCh Both Diagnostic Device USB compliance testing device

    E0h Interface Wireless Controller Wi-Fi adapter, Bluetooth adapter

  • 8/6/2019 USB Comunicao e tratamento de erros

    13/23

    USB

    Comunicao

    O Cabo USB:

    Os dispositivos USB so conectados comum cabo de quatro fios, com uma impedncia

    caracterstica de 90 ohms.

    Os dispositivos USB podem ser auto-

    alimentados.

  • 8/6/2019 USB Comunicao e tratamento de erros

    14/23

    USB

    Comunicao

    Os cabos USB contam com quatro fiosinternos: VBus (VCC), D+, D- e

    GND

    .

    VBus(VCC): Responsvel pelaalimentao eltrica.

    D+ e D-: So utilizados natransmisso de dados (a letra "D"

    provm de data, dado em ingls).

    GND: Controle eltrico, servindocomo "fio-terra".

  • 8/6/2019 USB Comunicao e tratamento de erros

    15/23

  • 8/6/2019 USB Comunicao e tratamento de erros

    16/23

    USB

    Protocolo

    Ao contrrio de RS-232 e similares interfaces seriais, onde o formato

    dos dados enviados no est definido,USB

    composto de vriascamadas de protocolos.

    Cada transao USB composto por:

    Token Packet (cabealho definir o que espera a seguir),

    Optional Data Packet, (contendo a carga).

    Status Packet (usada para reconhecer as operaes e para fornecer um meio de

    correo de erros) .

  • 8/6/2019 USB Comunicao e tratamento de erros

    17/23

    USB

    Protocolo

    A transferncia de informaes sobre o barramento so chamadas deoperaes. A qualquer momento o controlador de host pode ter uma

    lista de transaes que esto esperando para serem acionadas.

    Uma transao comea quando o controlador envia um pacote

    descrevendo o tipo, a direo da transao, o endereo do dispositivo

    USB de 7 bits e o nmero de endpoint.

  • 8/6/2019 USB Comunicao e tratamento de erros

    18/23

    USB

    Protocolo

    Na maioria dos casos, a operao completada pelo destino dos dados

    enviando um pacote de Handshake que um ACK, indicando que os dados

    foram aceites, um NAK, indicando que os dados no foram aceitos, ouSTALL, o que sinaliza que est paralisada.

    Os dados so enviados como um fluxo serial sncrono de bits, codificados

    usando NRZI (um 0 representado por uma transio de sinal e um 1 por

    nenhuma transio.)

    A insero de bits utilizado para garantir que as transies ocorrem com

    freqncia suficiente para que os receptores no percam a sincronizao . Os

    sinais de clock so transmitidas junto com os dados, e um campo SYNC

    precede cada pacote de dados.

  • 8/6/2019 USB Comunicao e tratamento de erros

    19/23

    USB

    Tratamento de erros

    Importantes verificaes e tratamentos de erros tem sido criados para o

    USB, para garantir que ele seja um mtodo confivel de conexo de

    perifricos a um PC.

    A integridade dos dados comparvel de um barramento interna.

    A proteo dos dados contra rudos e picos fornecida pelo uso de

    drivers lgicos diferenciados e cabeamento blindado.

    Quando os erros ocorrem, as verificaes de redundncia cclica (CRCs)

    so realizadas separadamente em ambos os campos de controle e de dados

    de pacotes, isto permite a recuperao de 100 por cento de ambos os erros

    de bit simples e duplos.

  • 8/6/2019 USB Comunicao e tratamento de erros

    20/23

    USB

    Tratamento de erros

    Um mecanismo de auto-recuperao construdo no protocolo de

    mensagens, com o tempo limite para a perda de pacotes e invlidos

    Alguns recuperadores de erros so incorporados no hardware.

    O controlador anfitrio tentar uma transao trs vezes antes de reportar

    um erro para o software cliente.

    Transferncias de interrupo e de dados em massa terminam com um

    pacote handshake para fornecer a confirmao de que os dados foram

    recebidos, ou solicitar que ele seja reenviado.

  • 8/6/2019 USB Comunicao e tratamento de erros

    21/23

    USB

    Tratamento de erros

    Com os dados iscronos, no possvel repetir uma operao falhou.

    Como apenas um 'slot' atribudo para o tubo em cada frame, reenviar

    os dados iria atrasar a transmisso de dados seguintes, atrasando toda a

    entrega dos dados.

    Consequentemente nenhum pacote handshake enviado e os dadosdevem ser aceites como esto.

  • 8/6/2019 USB Comunicao e tratamento de erros

    22/23

    Concluindo

    Com a popularizao deredes wifiedispositivos bluetooth, ofuturo do

    USB desconhecido j que o mundo caminha para osdispositivossem fio.

    Mas quando isso ocorrerteremoscomo opo deconexo o Wireless USB

    (WUSB), quealis, j realidade.

    O WUSB,atualmente, capazdetransmitirdadosem velocidadesdeat

    480 Mbps, paraconexesem um raio deat 3 metros, ou 110 Mbps para

    conexesem um raio deat 10 metros. Suafrequnciade operao

    corresponde faixa UWB (Ultra Wide Band), queestabelecetaxasentre

    3,1 GHze 10,6GHz.

    Emfim,aindairemos ouvirfalarmuito deUniversal SerialBus!

  • 8/6/2019 USB Comunicao e tratamento de erros

    23/23

    USB Comunicao e

    Tratamento de erros

    Fontes:

    http://www.usb.org

    http://www.infowester.com/usb.php