Você está na página 1de 18

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

—   —
 

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

São Luís, MA
29/11/2010
SumárioY
1. IntroduçãoY YY
2. ObjetivoY YY
3. Desenvolvimento TeóricoY YY
3.1 Barramento USBY YY
3.1.1 Visão Geral do FuncionamentoY YY
3.1.2 Estrutura de Software e ProtocoloY YY
3.1.3 Estrutura FísicaY YY
3.1.4 VersõesY YY
3.2 Barramento FireWire YY
3.2.1 Visão GeralY YY
3.2.2 Estrutura de Software e ProtocoloY YY
3.2.3 Estrutura FísicaY YY
3.2.4 VersõesY Y Y
3.3 Comparação entre USB e FireWireY YY
4. ConclusãoY YY
5. Referências BibliográficasY Y
Y
Y
Y
Y Y

—  
—     

j  

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).

—  
—     

ë 

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.

—  
—     

X   

X j—    —

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.

X j j!" 
   

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 USB


Existem 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).

—  
—     

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:

$Y 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;
$Y 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;
$Y Interrupt: baixa taxa de transferência de dados. Ex: mouses, teclados, joysticks;
$Y 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:

6Y Stream: pipe unidirecional conectado a um endpoint unidirecinal, que transfere dados a partir
de conexões Isocronous, Bulk e Interrupt;
6Y 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:

—  
—     

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

X j ë #$ %

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

I.Y Há a sincronização (SYNC) entre o host e o dispositivo USB;


II.Y 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.Y 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.Y A fonte da transmissão envia um pacote de dados (Data Packet) ou indica que não há dados a
transferir;
V.Y 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:

—  
—     

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

—  
—     

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.

X j X 
& 

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

—  
—     

B t l i l

it i ti t B: ti ti B i t
t i i i i t i t ti B :

i : t C t B

l i t t B i i t t l
i iti t t t i t i t it t t
l l i ií i t t
ti i i t i it i ti i ti
ti B i t i iti B t i
t i t i i i B

X  
Y
Y Y B Y tlY 
Y l Y  tY t liY Y  ii 
t YY  i Y
Y  Y
 i i  Y   Y 
 Y t  Y Y Y 
Y Y
 Y Y i
iY  Y BY
Y  Y t Y Y iY Y Y lY
Y Y Y tiY  tY tY Y   Y t i Y
  t
YY  it Y  t íti Yi :Y
Y
Yl YYl :YYiitiYjY Y Y YYtiYY

tY Y!Y  tYY"tY Y
Yl Y
Y iY Yi Y Yt  Y  íi Y
YY #t$l :Y iitiY BY 
Y  Y  tY  Y    tY 
Y Y  jY
 iY liY Y ii iYY"tY
Y 
lY 
tiili :Y Y Y BY !Y 
tí lY 
Y Y
iiY Y it
Y   iiY
%it t Y
Y
BYY&' ll (Y

—    —     



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 4  (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


%  ' () * ()—*
1 Vermelho VBUS
2 Branco D-
3 Verde D+
4 Preto GND
5 Azul StdA_SSRX- StdA_SSTX-
6 Amarelo Stda_SSRX+ StdA_SSTX+
7 GND GND_DRAIN
8 Roxo StdA_SSTX- StdA_SSRX-
9 Laranja StdA_SSTX+ Stda_SSRX+

—  
—     

X ë—   
 

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.

X ë j!" 

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.

X ë ë #$ %

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:

—  
—     

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.

—  
—     

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

r Y 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.

r Y 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:

—  
—     

Fig. 7: Gerenciamento do Barramento FireWire

X ë X 
& 

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

Fig. 9: Pinagem de cabos Firewire

—  
—     

)  ,)  -)  '  
1 8 Branco Vcc 30V não regulado
2 6 Preto GND Par trançado B
1 3 1 Laranja TPB- Par trançado B
2 4 2 Azul TOB+ Par trançado A
3 5 3 Vermelho TPA- Par trançado A
4 6 4 Verde TPA+
5 Escudo de A
7
9 Escudo de B
Tabela 2: Pinagem FireWire

X ë !+

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.

—  
—     

X X')    —
 

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

$Y 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).
$Y 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ó.
$Y Uma estrutura USB necessita de um controlador de host no topo da árvore. Na rede FireWire,
qualquer nó pode ser designado como nó raiz.
$Y Um cabo USB fornece 5Vcc para alimentação dos dispositivos Bus-Powered, enquanto que
um cabo FireWire pode fornecer, teoricamente, até 30Vcc.
$Y 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.

 ' 

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.

—  
—     

˜ #.  —/0# 

[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_Bus
http://en.wikipedia.org/wiki/FireWire
http://www.interfacebus.com/Design_Connector_USB.html
http://www.interfacebus.com/usb-cable-diagram-30.html
http://www.faculty.iubremen.de/birk/lectures/PC1012003/14usb/FINAL%20VERSION/usb_protocol.html
http://www.clubedohardware.com.br/artigos/USB-Estrutura-de-Software/869
http://www.clubedohardware.com.br/artigos/USB-Estrutura-Eletrica/870
http://www.infowester.com/usb.php
http://www.usb.org/docs
http://www.allpinouts.org/index.php/IEEE_1394_Serial_Bus_-_Firewire

—  
—