relatório atividade usb e firewire

25
INSTITUTO FEDERAL DE EDUCAÇÃO CIÊNCIA E TECNOLOGIA DO MARANHÃO CAMPUS SÃO LUÍS - MONTE CASTELO DEPARTAMENTO DE ELETROELETRÔNICA ENGENHARIA INDUSTRIAL ELÉTRICA ARQUITETURA DE SISTEMAS DIGITAIS BARRAMENTOS USB E FIREWIRE CÉSAR AUGUSTO SANTANA CASTELO BRANCO EE0911005-21 Trabalho de pesquisa para a disciplina de Arquitetura de Sistemas digitais, do curso de Engenharia Industrial Elétrica, para composição da nota referente à terceira avaliação

Upload: cesar-augusto-santana-castelo-branco

Post on 26-Jun-2015

223 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Relatório Atividade USB e FireWire

INSTITUTO FEDERAL DE EDUCAÇÃO CIÊNCIA E TECNOLOGIA DO MARANHÃOCAMPUS SÃO LUÍS - MONTE CASTELO

DEPARTAMENTO DE ELETROELETRÔNICAENGENHARIA INDUSTRIAL ELÉTRICAARQUITETURA DE SISTEMAS DIGITAIS

BARRAMENTOS USB E FIREWIRE

CÉSAR AUGUSTO SANTANA CASTELO BRANCO EE0911005-21

São Luís, MA29/11/2010

Trabalho de pesquisa para a disciplina de Arquitetura de Sistemas digitais, do curso de Engenharia Industrial Elétrica, para composição da nota referente à terceira avaliação

Page 2: Relatório Atividade USB e FireWire

Sumário1. Introdução......................................................................................................................................................3

2. Objetivo..........................................................................................................................................................4

3. Desenvolvimento Teórico...............................................................................................................................5

3.1 Barramento USB..........................................................................................................................................5

3.1.1 Visão Geral do Funcionamento.................................................................................................................5

3.1.2 Estrutura de Software e Protocolo.............................................................................................................7

3.1.3 Estrutura Física..........................................................................................................................................9

3.1.4 Versões....................................................................................................................................................10

3.2 Barramento FireWire..................................................................................................................................12

3.2.1 Visão Geral..............................................................................................................................................12

3.2.2 Estrutura de Software e Protocolo...........................................................................................................12

3.2.3 Estrutura Física........................................................................................................................................15

3.2.4 Versões....................................................................................................................................................16

3.3 Comparação entre USB e FireWire............................................................................................................17

4. Conclusão.....................................................................................................................................................17

5. Referências Bibliográficas............................................................................................................................18

Barramentos USB e FireWire Página 2

Page 3: Relatório Atividade USB e FireWire

1. Introdução

Antigamente, o ato de instalar periféricos no computador se configurava como uma tarefa complicada e onerosa, muitas vezes digna apenas de técnicos ou usuários com experiência na área. Era necessário descobrir em qual porta do computador conectar determinado dispositivo, depois ter o trabalho de endereçar corretamente todos os periféricos conectados e esperar que o sistema operacional reconhecesse o objeto em questão. Por conta disso, muitos usuários acabavam desistindo de incrementar suas máquinas com novos utensílios.

Para acabar com este transtorno, a indústria foi em busca de um padrão que facilitasse a conexão de periféricos ao computador. Assim, surgiu em 1995 o Universal Serial Bus (USB), resultado de uma parceria entre várias companhias de alta tecnologia (Compaq, Hewlett-Packard, Intel, Lucent, Microsoft, NEC e Philips), e que facilitou a conexão de variados dispositivos ao computador por parte dos usuários.

Inicialmente, a tecnologia USB foi considerada como um complemento para o padrão FireWire (interface IEEE 1394); um barramento serial projetado com uma grande largura de banda, ideal para conectar periféricos que trabalham com altas taxas de transferência de dados e em tempo real, tais como: HDs, discos ópticos e dispositivos de áudio e vídeo. Este padrão foi idealizado inicialmente pela Apple em 1986 (e desenvolvido posteriormente com contribuições de engenheiros de empresas como Texas Instruments, Sony e IBM) como uma alternativa ao barramento paralelo SCSI, proporcionando menores custos de implementação e conexão simplificada.

Ambos os barramentos seriais foram projetados com altas taxas de transferências de dados, embora o barramento USB tenha sido utilizado incialmente para conectar dispositivos com menores taxas de transferência, tais como: mouses, teclados e joysticks. Atualmente, devido às versões mais rápidas, o padrão USB se tornou uma alternativa viável para aplicações de mídia, apesar de também terem surgido versões com maior capacidade de transferência de dados para o FireWire. Estes padrões também vieram acrescidos de novas tecnologias como plug and play (algo como plugar e usar), conexão de vários dispositivos em uma única porta, além de serem alimentados eletricamente pelo host e poderem fornecer alimentação aos periféricos (até um certo limite).

Barramentos USB e FireWire Página 3

Page 4: Relatório Atividade USB e FireWire

2. Objetivo

O objetivo principal deste relatório de pesquisa é apresentar detalhadamente os barramentos USB e FireWire, explanando as principais características de cada padrão, tais como: estrutura física, de software e aplicabilidade em sistemas de transmissão de dados digitais. Serão apresentadas seguindo uma seqüência lógica, as propriedades de cada tecnologia incluindo: cabeamento, tipos de conexões, taxas de transferência, protocolos de transmissão de dados, dentre outras.

Barramentos USB e FireWire Página 4

Page 5: Relatório Atividade USB e FireWire

3. Desenvolvimento Teórico

3.1 Barramento USB

O Universal Serial Bus (Barramento Serial Universal) foi desenvolvido para ser um padrão internacional de interface entre um boot host e seus periféricos. É uma alternativa com menores custos e maior aplicabilidade do que as antigas interfaces paralelas, facilitando as conexões e possibilitando maior mobilidade, além de suportar a conexão de vários dispositivos em uma única porta. O padrão USB é uma interface externa multiponto compatível com a maioria dos sistemas operacionais existentes.

3.1.1 Visão Geral do Funcionamento

O sistema de USB é composto por um host e por múltiplas portas de fluxo de dados onde a conexão com um dispositivo periférico pode ser estabelecida. Um host USB pode conter múltiplos controladores de host, cada um fornecendo inúmeras portas para conexão. Podem-se incluir também hubs USB para expandir o número de dispositivos conectados ao mesmo tempo ao host; a estrutura de conexão através de hubs é idealizada na forma de uma “árvore” com no máximo cinco níveis, sendo que no topo dessa árvore,ou seja, no controlador host, fica o root hub (hub raiz). Podem ser conectados 127 dispositivos (incluindo os hubs) a um mesmo controlador de host. A figura 1 ilustra a disposição de um sistema USB:

Fig. 1: Sistema USBExistem dois tipos de dispositivos USB: hub e função. No entanto, alguns dispositivos USB podem ser capazes de realizar várias funções, estes são chamados dispositivos compostos (compound devices). Cada função (espécie de sub-dispositivo lógico) recebe um único endereço distinto do host quando da conexão do dispositivo. Assim, a comunicação USB é baseada em canais lógicos, ou através dos pipes (tubulações lógicas).

Barramentos USB e FireWire Página 5

Page 6: Relatório Atividade USB e FireWire

Um pipe é uma conexão entre o controlador de host e uma função lógica ou interface de um determinado periférico; cada entidade lógica é denominada endpoint (ponto de chegada). Um pipe só é formado quando o host reconhece a existência de um endpoint. Cada dispositivo USB pode ter no máximo 32 pipes, sendo que um destes pipes é requisitado para o controle do dispositivo, apesar de que raramente um dispositivo USB terá todos estes endpoints.

Uma vez estabelecida a comunicação, o host recebe a informação de que tipo de conexão o dispositivo conectado utiliza. Há quatro possibilidades:

Isochronous: para transmissões em tempo real, alguns dados podem ser perdidos já que não há mecanismo de detecção de erros. Ex: aparelhos de transmissão áudio ou vídeo;

Bulk: transferência de um grande volume de dados; aqui há a detecção de erros para garantir a integridade dos dados transmitidos. Ex: impressoras, scanners;

Interrupt: baixa taxa de transferência de dados. Ex: mouses, teclados, joysticks; Control: parâmetros de controle e de configuração do dispositivo. Ex: requisição de operação,

resposta do estatus do dispositivo;

Define-se dois tipos de pipes, de acordo com a conexão utilizada:

Stream: pipe unidirecional conectado a um endpoint unidirecinal, que transfere dados a partir de conexões Isocronous, Bulk e Interrupt;

Menssage: pipe bidirecional ligado a um endpoint bidirecional; é responsável pelo controle (conexão Control) do fluxo de dados.

O controlador host define as taxas de transferência de dados para os dispositivos. Desta forma, nenhum dispositivo pode realizar uma transferência de dados sem o consentimento do controlador host.

Quando um dispositivo USB é conectado pela primeira vez ao controlador host, inicia-se o processo de enumeração do dispositivo. O endereço do periférico é resetado e a taxa de transferência de dados é determinada. Então o host lê as informações a respeito do dispositivo e designa um novo endereço distinto de 7 bits para o dispositivo. Se há compatibilidade entre o host e o dispositivo USB, os drivers de controle deste último são carregados e um sinal de estado é determinado para o mesmo. Caso o host seja reiniciado, o processo de numeração será repetido para todos os dispositivos que forem conectados posteriormente.

É importante observar que o host endereça apenas o dispositivo composto, cada entidade lógica tem seu endpoint correspondente já determinado pelo fabricante. Quando um host deseja iniciar uma transferência de dados, ele endereça o endpoint de um pipe da seguinte forma: <endereço_do_dispositivo> e <número_do_enpoint>. A figura 2 mostra o que ocorre no momento da conexão de um dispositivo USB:

Barramentos USB e FireWire Página 6

Page 7: Relatório Atividade USB e FireWire

Fig. 2: Seqüência de eventos após a conexão de um dispositivo USB

3.1.2 Estrutura de Software e Protocolo

A transmissão de dados USB é feita através do envio de pacotes, e acontece da seguinte forma:

I. Há a sincronização (SYNC) entre o host e o dispositivo USB;II. O host envia um pacote de teste (Token Packet) descrevendo o tipo e a direção da

transmissão, além do endereço do dispositivo e o número do endpoint;III. Se a direção do pacote é a mesma do endpoint referenciado, o dispositivo envia um pacote de

reconhecimento (Handshake Packet) indicado o status atual ou se houve alguma condição de erro. Caso contrário, um novo pacote de reconhecimento é enviado com a direção correta;

IV. A fonte da transmissão envia um pacote de dados (Data Packet) ou indica que não há dados a transferir;

V. O destino envia um pacote indicando que a transferência ocorreu com sucesso.

Todos os pacotes USB são compostos por um pacote identificador (PID) de um byte e por informações adicionais de tamanhos variados, conforme o tipo de pacote. A figura 3 mostra o formato dos pacotes USB:

Barramentos USB e FireWire Página 7

Page 8: Relatório Atividade USB e FireWire

Fig. 3: Formato dos pacotes USB

O Token Packet identifica o sentido da transmissão, podendo ser do host para o endpoint (Out Packet), do endpoint para o host (In Packet), de início de frame (quadro) ou bidirecional, que é próprio de uma transferência de controle (Setup Packet). O PID é seguido de dois bytes, sendo 11 bits usados para o endereçamento e 5 bits para a verificação de CRC (Cyclic Redundancy Check). Um In Token (sinal de entrada) precisa de uma resposta do dispositivo através de um Handshake Packet para iniciar a transferência de um frame de dados. Já um Out Token é seguido imediatamente por um frame de dados, podendo o dispositivo enviar um Handshake Packet se necessário.

Os Handshake Packets são constituídos apenas pelo PID e são enviados como uma resposta a uma transferência de dados ou para confirmar o sentido da transmissão e o status do dispositivo. Existem três tipos básicos de Handshake Packets:

- ACK: indica uma transmissão de dados bem sucedida;- NAK: indica um erro na transmissão e que o frame precisa ser reiniciado;- STALL: indica erro no dispositivo, e que os dados não poderão ser transmitidos.

A versão USB 2.0 define mais dois Handshake Packets:

- NYET: indica que uma transmissão interrompida ainda não acabou;- ERR: indica que uma transação interrompida falhou.

Um Data Packet consiste em um PID, seguido por no máximo 1023 bytes de dados e 2 bytes para verificação de CRC. Existem dois tipos básicos: DATA0 e DATA1, que devem ser precedidos por um sinal de endereço e seguidos por um sinal de handshake. Cada pacote enviado fornece uma seqüência numérica de 1 bit. A cada transferência, o dispositivo grava o tipo do último pacote DATAx recebido. Caso receba um pacote do mesmo tipo do anterior, entende este último como

Barramentos USB e FireWire Página 8

Page 9: Relatório Atividade USB e FireWire

sendo uma repetição, ignorando-o. Apenas um pacote do tipo oposto ao armazenado será recebido pelo dispositivo. Isto evita a redundância e perda de dados.

Na verdade, o PID é constituído apenas por 4 bits, o nibble restante é o complemento de um dos quatro MSB. Este formato ajuda na detecção de erros. É importante observar também que um PID tem no máximo quatro bits 1 consecutivos. A versão USB 2.0 inclui o sinal PING, o qual pergunta ao dispositivo se ele está pronto para receber um par de pacotes de dados. O dispositivo deve então responder com o hanshake apropriado. Isto evita a necessidade de enviar um pacote de dados que será interpretado como um a repetição para o dispositivo.

3.1.3 Estrutura Física

O barramento físico USB é composto basicamente por quatro fios, dois para a alimentação e dois para a transferência de dados, além de uma malha para a redução de ruídos simples. O cabo usa um padrão de cores para identificar as funções dos fios, como mostra a figura 4:

Fig. 4: Padrão de cores para um cabo USB

Os fios VBus e GND são responsáveis pela alimentação do dispositivo, fornecendo no máximo 5V e 500mA para cada porta do root hub do host. Já os fios D+ e D- são responsáveis pela transferência de dados. Estes fios transmitem os dados usando a lógica de codificação NRZI (No Return to Zero Inverted), ou seja, os 1s são interpretados como uma transição do sinal de nível alto para baixo, ou vice-versa, e os 0s são lidos quando não há uma transição do sinal.

Do ponto de vista da alimentação, um dispositivo USB pode trabalhar de duas formas: Bus-Powered e Self-Powered. No modo Bus-Powered, o dispositivo é alimentado pelo próprio barramento USB, recebendo no máximo 500mA. Caso o hub que contenha os dispositivos não possuir alimentação própria, cada dispositivo conectado receberá no máximo 100mA. Estes dispositivos são desligados involuntariamente quando o controlador de host é desligado, diferentemente dos que operam no modo Self-Powered, no qual o dispositivo possui alimentação própria e, portanto, não consome energia do barramento. Flash drives e mouses são exemplos de dispositivos que trabalham no modo

Barramentos USB e FireWire Página 9

Page 10: Relatório Atividade USB e FireWire

Bus-Powered, enquanto que aparelhos como scanners e impressoras se enquadram no modo Self-Powered.

Existem dois tipos padrão de conectores USB: tipo A e tipo B, que podem assumir os formatos standard, mini e micro. A figura 5 mostra abaixo os formatos de cada tipo de cabo USB padrão:

Fig. 5: Formatos dos Conectores USB Padrão

Alguns fabricantes usam conectores USB próprios que fazem interface entre o padrão usual e seus dispositivos. No entanto, conectores proprietários costumam não ser bem aceitos por terem custo elevado em relação a padrões de mercado e por serem mais difíceis de encontrar. Os conectores padrão do tipo micro possuem um quinto pino que permite distinguir uma conexão tipo A de uma conexão tipo B. O comprimento máximo permitido para um cabo USB 2.0 (e versões anteriores) é de 5 metros. Não há um comprimento máximo definido para o padrão USB 3.0.

3.1.4 Versões

O padrão USB, tal como qualquer outra tecnologia, passa periodicamente por revisões em suas especificações, buscando sempre atender às novas demandas do mercado. A primeira versão USB que se tornou padrão foi a 1.1, lançada em 1998. A partir desta, todas as versões posteriores apresentam as seguintes características básicas:

- Plug and Play: o dispositivo já pode ser usado a partir do momento que é conectado ao host, sendo que alguns podem precisar de drives ou softwares específicos. - Hot-Swappable: dispositivos USB podem ser conectados ou desconectados sem que seja necessário desligar ou reiniciar o host.- Ampla compatibilidade: o padrão USB é compatível com a maioria dos sistemas operacionais existentes.

USB 1.1 (Full-Speed)

Barramentos USB e FireWire Página 10

Page 11: Relatório Atividade USB e FireWire

em Setembro de 1998 para corrigir os problemas encontrados na versão 1.0. Possui taxas de transferência de 1.5Mbit/s (Low-Bandwidth) a 12 Mbit/s (Full-Bandwidth). Teve como foco os dispositivos de interface humana (HID), tais como mouses, teclados e joysticks, que possuem uma baixa taxa de transferência de dados.

USB 2.0 (High-Speed)Lançada em Abril de 2000 com uma largura de banda máxima de 480Mbit/s. Possui o mesmo padrão de conexão da versão 1.1 portanto, é compatível com versões anteriores. A partir da versão 2.0, fabricantes puderam adotar o padrão em seus produtos isentos de pagar royalties (licenças de uso da tecnologia), o que tornou a tecnologia ainda mais popular. A nova velocidade de transmissão abriu o leque de opções de uso do barramento USB, que se tornou uma alternativa viável para a conexão de dispositivos de altas taxas de transmissão e em tempo real, como aplicações de áudio e vídeo.

USB 3.0 (SuperSpeed)Especificação concluída em Novembro de 2008. Com um novo esquema de cabeamento, como mostra a Tabela 1, a nova tecnologia oferece uma taxa de transferência de 4.8Gbits/s com uma transmissão bidirecional dos dados, além de uma alimentação elétrica mais potente, fornecendo 900mA para os dispositivos conectados. USB 3.0 poderá fazer uso de novos conectores. Também é compatível com versões anteriores.

Tabela 1: Pinagem do padrão USB 3.0

Pino Cor Descrição (Tipo A) Descrição (Tipo B)

1 Vermelho VBUS2 Branco D-3 Verde D+4 Preto GND5 Azul StdA_SSRX- StdA_SSTX-6 Amarelo Stda_SSRX+ StdA_SSTX+7 GND GND_DRAIN8 Roxo StdA_SSTX- StdA_SSRX-9 Laranja StdA_SSTX+ Stda_SSRX+

Barramentos USB e FireWire Página 11

Page 12: Relatório Atividade USB e FireWire

3.2 Barramento FireWire

O padrão IEEE 1394 é uma interface externa multiponto de alto desempenho destinada a comunicações que exigem uma alta taxa de transferência de dados e em tempo real (isochronous). Criado em 1980 pela Apple, este padrão também conhecido como i.LINK (Sony) ou Lynx (Texas Instruments), contou com a contribuição de diversas empresas de alta tecnologia até que suas especificações estivessem bem definidas. A tecnologia FireWire substituiu a interface paralela SCSI em diversas aplicações, devido aos baixos custos de implementação e esquema de conexão mais simplificado. O barramento FireWire encontrou aplicação não só em sistemas computacionais, mas também em produtos eletrônicos para o consumidor como câmeras digitais, aparelhos de DVD e até televisores.

3.2.1 Visão Geral

O barramento FireWire utiliza a configuração Daisy Chain para conectar no máximo 63 dispositivos a uma mesma porta. Além disso, pode se usar do recurso das pontes para interconectar até 1022 barramentos FireWire. É importante ressaltar que o FireWire pode não estar estruturado como uma Daisy chain estrita, podendo usar uma configuração em forma de árvore. O padrão IEEE 1394 define duas categorias de barramento: backplane (plano de fundo) e cable (cabeamento).

O barramento backplane oferece suporte a barramentos conectados paralelamente, fornecendo uma comunicação serial alternativa entre dispositivos conectados no backplane. Já o barramento cable funciona como uma “rede não-cíclica de ramos finitos”, a qual se constitui das pontes e dos nós (dispositivos ligados a cable). Nesta rede não-cíclica, os dispositivos são ligados através de laços para permitir uma comunicação simultânea com o sistema. Um sistema de endereçamento de 16 bits permite a conexão de 64K nós.

3.2.2 Estrutura de Software e Protocolo

O padrão FireWire faz uso de uma pilha de protocolos com três camadas para controlar as interações entre o sistema principal e os dispositivos periféricos pelo barramento serial. A figura 6 mostra abaixo a estrutura dessa pilha de protocolos:

Barramentos USB e FireWire Página 12

Page 13: Relatório Atividade USB e FireWire

Fig. 6: Pilha de Protocolos FireWire

- Camada Física (Physical Layer): define os meios de transmissão permitidos e as características elétricas e de sinalização de cada um. Esta camada converte dados binários em sinais elétricos e se encarrega da arbitração dos dispositivos.O FireWire oferece dois tipos de arbitração: uma baseada na estrutura em árvore dos nós e a outra é uma Daisy chain linear. Os dispositivos são configurados de forma que um nó é eleito a raiz da árvore e os outros nós se organizam numa hierarquia de pai/filho. O nó raiz então se torna o árbitro central e processa as solicitações de controle do barramento de acordo com o esquema primeiro a chegar, primeiro a ser atendido. No caso de requisições simultâneas, o nó mais próximo da raiz tem a prioridade mais alta; para o caso de nós eqüidistantes da raiz, o nó de menor ID recebe o acesso.Duas funções adicionais incrementam este método de arbitração: arbitração imparcial (fairness arbitration) e arbitração urgente. A primeira divide o tempo do barramento em intervalos imparciais, nos quais os nós competem pelo acesso ao barramento. No início do intervalo, cada nó define um flag (sinal) arbitration_enable. Este esquema impede que dispositivos de alta prioridade com um grande volume de dados monopolizem o barramento. Já a arbitração urgente permite que nós configurados com prioridade urgente consigam ganhar o controle do barramento mais de uma vez durante um intervalo parcial. Um contador é usado para cada nó de alta prioridade, permitindo que estes controlem 75% do tempo disponível do barramento. Como conseqüência deste método, temos que para cada pacote de baixa prioridade, três pacotes de alta prioridade são transmitidos.

Barramentos USB e FireWire Página 13

Page 14: Relatório Atividade USB e FireWire

- Camada de Enlace (Link Layer): define a transmissão de dados na forma de pacotes. Há dois tipos de transmissão aceitos:

o Assíncrono (Assyncronous): quantidade de dados variável e vários bytes de controle, ou seja,

pacotes de tamanho variável com confirmação por parte do destino. O processo de envio de um pacote assíncrono é chamado de sub-ação, e segue as seguintes etapas: seqüência de arbitração, transmissão do pacote, o intervalo de confirmação, confirmação e intervalo de sub-ação.Na seqüência de arbitração o dispositivo assume o controle do barramento, então o pacote é enviado. Cada pacote inclui IDs de origem e destino e a verificação de CRC, além de informações de parâmetro para um tipo de pacote específico. A confirmação de recebimento é feita através de um pacote de reconhecimento, enviado dentro de um determinado intervalo de tempo. Após a confirmação, o protocolo define um intervalo de tempo (tempo de sub-ação) para evitar que outros nós comecem a arbitrar antes que a confirmação seja emitida.

o Isócrono (Isochronous): quantidade de dados variável com pacotes de tamanho específico e

sem confirmação. Os dados são transmitidos a uma taxa bem definida. Ideal para dispositivos que consomem dados em tempo real, como aparelhos de som e vídeo. Em uma transmissão do tipo isócrona não há o intervalo de confirmação. Cada pacote isócrono contém números de canal de 8 bits, um campo de tamanho de dados e uma verificação de CRC, além dos dados propriamente ditos.

Para abrigar transmissões assíncronas e isócronas simultaneamente, um nó é designado como mestre de ciclo, o qual avisa aos outros nós a respeito do início de um ciclo isócrono através do pacote cycle_start. Desta forma, apenas os pacotes isócronos serão enviados durante esse ciclo. Como não existe confirmação para esse tipo de pacote, as fontes de dados isócronas disputam entre si o controle do barramento. O resultado disso é um pequeno intervalo entre as transmissões chamado intervalo isócrono, menor que um intervalo de sub-ação e que é conseqüência de atrasos no barramento. Após todas as fontes isócronas completarem suas transferências, o barramento permanecerá ocioso por tempo suficiente para que ocorra um intervalo de sub-ação. Então será a vez das fontes assíncronas competirem pelo controle do barramento.

- Camada de Transação (Transaction Layer): implementa o protocolo de requisição-resposta que opera de acordo com o padrão ISO/IEC 13213:1994 [ANSI/IEEE Std 1212, 1994 Edition]. É responsável por realizar operações de leitura, gravação e bloqueio, de acordo com o padrão do sistema principal.

O padrão IEEE 1394 possui um sistema de gerenciamento do barramento que permite uma maior flexibilidade para a comunicação entre uma grande faixa de dispositivos, sem a necessidade de adicionar qualquer controlador de barramento. Caso o barramento seja resetado, a estrutura do barramento é determinada. São atribuídos IDs para cada um dos nós da árvore, o mestre de ciclo inicia a arbitração e as transferências isócronas e assimétricas ocorrem, respectivamente. A figura 7 ilustra os eventos que ocorrem desde o momento em que o barramento é resetado:

Barramentos USB e FireWire Página 14

Page 15: Relatório Atividade USB e FireWire

Fig. 7: Gerenciamento do Barramento FireWire

3.2.3 Estrutura Física

Os cabos FireWire possuem de 4 a 9 pinos para conexão de dispositivos. Duas vias são direcionadas para a alimentação enquanto que as outras são separadas em pares e tratam especificamente da sincronização e transmissão de dados. Nos cabos com 4 fios de conexão, não há fios destinados à alimentação. As figuras 8 e 9 ilustram a aparência destes cabos, enquanto que a Tabela 2 identifica cada um dos pinos de conexão:

Fig. 8: Cabos FireWire

Barramentos USB e FireWire Página 15

Fig. 9: Pinagem de cabos Firewire

Page 16: Relatório Atividade USB e FireWire

Tabela 2: Pinagem FireWire

3.2.4 Versões

A tecnologia FireWire, desde o lançamento da primeira versão (FireWire 400) já contava com as seguintes características básicas:

- Transferência de dados em tempo real para aplicações de mídia;- Tecnologia Plug and Play;- Hot-Swappable;- Especificações garantidas sobre largura de banda para aplicações em tempo real;- Capacidade de funcionar em três velocidades diferentes;- Conectores comuns para diferentes dispositivos e aplicações;- Capacidade de alimentação para os dispositivos;- Até 45W de potência para as aplicações;- Comprimento máximo especificado para os cabos de 4,5m.

FireWire 400 (IEEE 1394-1995)Primeiro padrão desenvolvido. Pode transferir dados entre dispositivos nas faixas de: 100, 200 e 400Mbit/s de forma bidirecional, mas não ao mesmo tempo (half-duplex). Apesar do comprimento limitado, podem se conectados 16 cabos na configuração Daisy chain através de hubs. O limite máximo de extensão em qualquer configuração é de 72m para a taxa máxima de transmissão. O conector de 6 pinos é denominado como um conector alfa (alpha). Cada porta pode fornecer cerca de 8 a 9W para cada dispositivo.Obs.: uma alteração, o padrão IEEE 1934a, foi inserido pela Sony em 2000, com o apelido de i.LINK. O conector alfa deste padrão possui apenas 4 pinos e é compatível com o de 6 pinos, entretanto não fornece alimentação ao dispositivo.

FireWire 800 (IEEE 1394b-2002)Esta especificação permite uma taxa de transferência de 786,432Mbit/s bidirecional simultânea (full-duplex), graças ao novo sistema de codificação denominado como modo beta (beta mode). É perfeitamente compatível com as taxas mais lentas e com os conectores alfa de 6 pinos do FireWire 400. Entretanto, os novos conectores beta (com até 9 pinos) possuem um formato diferente e, portanto, incompatíveis com os antigos conectores alfa. A especificação completa deste padrão suporta taxas de dados de até 3200Mbit/s.

Barramentos USB e FireWire Página 16

4pin 6 pin 9 pin Cor Nome Descrição1 8 Branco Vcc 30V não regulado2 6 Preto GND Par trançado B

1 3 1 Laranja TPB- Par trançado B2 4 2 Azul TOB+ Par trançado A3 5 3 Vermelho TPA- Par trançado A4 6 4 Verde TPA+

5 Escudo de A79 Escudo de B

Page 17: Relatório Atividade USB e FireWire

3.3 Comparação entre USB e FireWire

As principais diferenças técnicas entre os dois barramentos seriais são descritas a seguir:

O padrão USB utiliza uma configuração tiered-star (árvore de camadas diferenciadas), enquanto que FireWire usa uma configuração em árvore (ou uma Daisy chain não estrita).

Antes da versão 3.0, os dispositivos USB não podiam se comunicar com o host sem uma requisição do mesmo. Já os dispositivos FireWire possuem autonomia para se comunicar com qualquer nó.

Uma estrutura USB necessita de um controlador de host no topo da árvore. Na rede FireWire, qualquer nó pode ser designado como nó raiz.

Um cabo USB fornece 5Vcc para alimentação dos dispositivos Bus-Powered, enquanto que um cabo FireWire pode fornecer, teoricamente, até 30Vcc.

USB pode fornecer 500mA [2.5W], chegando a 1800mA[9W] para aversão 3.0. FireWire pode fornecer, teoricamente, até 60W.

O padrão USB foi idealizado primeiramente como um complemento para o FireWire. USB foi projetado buscando um baixo custo e simplicidade, enquanto que FireWire procurou fornecer uma alta performance para aplicações em tempo real. As primeiras versões USB foram largamente utilizadas em dispositivos de interface humana (HID), como mouses e teclados. Já o padrão FireWire sempre encontrou aplicação em dispositivos de mídia, como câmeras digitais, scanners e aparelhos de áudio e vídeo. A velocidade do USB 2.0 supera as primeiras implementações do FireWire (FireWire 400), porém é bem inferior à do FireWire 800, o qual pode equiparar-se ao USB 3.0. O chipset e os drivers utilizados para implementar USB e Firewire são de fundamental importância para que as especificações de largura de banda e a compatibilidade dos periféricos descritas pelo fabricante sejam totalmente atendidas.

4. Conclusão

Os padrões seriais USB e FireWire revolucionaram as conexões de periféricos em sistemas computacionais e digitais em geral. Seu baixo custo de implementação e facilidade de conexão por parte dos usuários menos familiarizados com a tecnologia digital, além dos altos parâmetros de desempenho, facilitaram sua popularização e consolidação como padrões internacionais para a conexão de dispositivos periféricos.

Este relatório de pesquisa procurou colocar em linhas gerais as características de cada uma destas tecnologias. Foram expostas e detalhadas as especificações físicas e de protocolo de cada barramento, além dos novos recursos tecnológicos incluídos nas diferentes versões destes padrões. Foi possível tornar mais transparentes os fundamentos que regem as estruturas de barramento serial desenvolvidas nas últimas décadas.

Barramentos USB e FireWire Página 17

Page 18: Relatório Atividade USB e FireWire

5. Referências Bibliográficas

[1] STALLINGS, Willian. Arquiterura e Organização de Computadores. 8ª Ed. São Paulo: Pearson Pratice Hall, 2010.[2] ANDERSON, Don. FireWire System Architecture. 2ª Ed. Reading, MA: Addison-Wesley, 1999.

Páginas web visitadas:

http://en.wikipedia.org/wiki/Universal_Serial_Bushttp://en.wikipedia.org/wiki/FireWirehttp://www.interfacebus.com/Design_Connector_USB.htmlhttp://www.interfacebus.com/usb-cable-diagram-30.htmlhttp://www.faculty.iubremen.de/birk/lectures/PC1012003/14usb/FINAL%20VERSION/usb_protocol.htmlhttp://www.clubedohardware.com.br/artigos/USB-Estrutura-de-Software/869http://www.clubedohardware.com.br/artigos/USB-Estrutura-Eletrica/870http://www.infowester.com/usb.phphttp://www.usb.org/docshttp://www.allpinouts.org/index.php/IEEE_1394_Serial_Bus_-_Firewire

Barramentos USB e FireWire Página 18