slide1 n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Pontifícia Universidade Católica - PUCRS PowerPoint Presentation
Download Presentation
Pontifícia Universidade Católica - PUCRS

Loading in 2 Seconds...

play fullscreen
1 / 40

Pontifícia Universidade Católica - PUCRS - PowerPoint PPT Presentation


  • 81 Views
  • Uploaded on

Pontifícia Universidade Católica - PUCRS. Programação de Periféricos. Seminário sobre protocolo Firewire. – Palestrantes – Natan Hoppe Thiago Ludwig. Porto Alegre, 24 de Outubro de 2007. História. Desenvolvido pela Apple Substituto do SCSI Padronizado em 1995 através da norma IEEE 1394.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Pontifícia Universidade Católica - PUCRS' - triage


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide1

Pontifícia Universidade Católica - PUCRS

Programação de Periféricos

Seminário sobre protocolo Firewire

– Palestrantes –

Natan Hoppe

Thiago Ludwig

Porto Alegre, 24 de Outubro de 2007.

hist ria
História
  • Desenvolvido pela Apple
  • Substituto do SCSI
  • Padronizado em 1995 através da norma IEEE 1394.
  • Firewire 400, IEEE 1394a
  • Firewire 800, IEEE 1394b
exemplos de aplica o
Exemplos de aplicação

Figura 1 – Filmadora

Figura 2 – HD externo

Figura 3 – Equipamento de áudio

cabo firewire 400
Cabo – Firewire 400
  • Alimentação: 2 pinos
  • Dados: 4 pinos
  • Distância máxima: 4,5m
cabo firewire 800
Cabo – Firewire 800
  • Alimentação: 2 pinos
  • Dados: 4 pinos
  • Aterramento: 2 pinos
  • Nulo: 1 pino
  • Distância máxima: 4,5m
slide7
Cabo

Figura 4 – Cabo Firewire 400

velocidade
Velocidade
  • Firewire:
    • Firewire 400: 400 Mbps = 50 MB/s
    • Firewire 800: 800 Mbps = 100 MB/s
  • USB:
    • USB 1.0: 1,5 Mbps = 0,188 MB/s
    • USB 1.1: 12 Mbps = 1,5 MB/s
    • USB 2.0: 480 Mbps = 60 MB/s
velocidade1
Velocidade

Figura 5 – USB Vs Firewire

topologia
Topologia
  • Até 63 dispositivos na mesma porta

Figura 6 – Exemplo de conexão dos periféricos

n s e endere amento
Nós e endereçamento
  • 1 Firewire – 1024 barramentos
  • 1 barramento – 64 nós
  • 1 nó – 256 TB
  • Endereçamento 64 bits
n s e endere amento1
Nós e endereçamento

Figura 7 – Hierarquia de endereçamento

n s e endere amento2
Nós e endereçamento

Figura 8 – Endereçamento

  • 10 bits: Número do barramento
  • 6 bits: Número do nó
  • 48 bits: Endereçamento de memória
transfer ncia de dados
Transferência de dados
  • Modo Assíncrono
  • Modo Isócrono
  • Frequência de operação: 8 KHz
  • Pacotes de diferentes modos podem ser transferidos no mesmo ciclo de clock.
transfer ncia de dados1
Transferência de dados

Figura 9 – Pacotes assíncronos e isócronos no mesmo ciclo.

transfer ncia de dados2
Transferência de dados
  • Modo Assíncrono:
    • Read request
    • Write request
    • Read response
    • Write response
    • Lock request
    • Lock response
    • No Data
transfer ncia de dados3
Transferência de dados
  • Modo Isócrono:
    • Data block
camadas do protocolo
Camadas do protocolo
  • Physical Layer
  • Link Layer
  • Transaction Layer
  • Serial Bus Management Layer
camadas do protocolo1
Camadas do protocolo

Figura 10 – Diagrama das camadas do protocolo

physical layer
Physical Layer
  • Sinal elétrico, conector e cabo;
  • Responsável por transformar a topologia física em árvore lógica;
  • Usa Data Strobe Encoding para gerar o clock;
physical layer1
Physical Layer
  • Data Strobe Encoding

Figura 11 – Data Strobe Encoding

physical layer2
Physical Layer
  • Reset;
  • Tree Identification;
  • Self Identification;
physical layer tree identification
Physical Layer – Tree Identification

Figura 12 – Antes da identificação

Figura 13 – Depois da identificação

physical layer3
Physical Layer

Tabela 1 – Alguns controladores de camada física

link layer
Link Layer
  • Gerenciamento de pacotes;
  • Verifica o CRC recebido e calcula e anexa o CRC a ser enviado;
  • Transferência isócrona;
  • Determina que tipo de transferência está em andamento.
link layer implementa o b sica
Link Layer – Implementação básica
  • Interface com a Physical Layer;
  • Geração e verificação de CRC;
  • Transmissão e recepção de filas (FIFOs);
  • Registradores de interrupção;
  • Interface hospedeira (Host interface);
  • Pelo menos um canal DMA.
link layer interface phy
Link Layer – Interface PHY

Tabela 2 – Sinais de interface Link Layer/Physical Layer

link layer1
Link Layer

Tabela 3 – Controladores de camada de link

transaction layer
Transaction Layer
  • Usado apenas para transferências assíncronas;
  • 5 tipos de transações:
    • Simple Quadlet Read;
    • Simple Quadlet Write;
    • Variable Lenght Read;
    • Variable Lenght Write;
    • Lock Transactions;
transaction layer pacote
Transaction Layer – Pacote

Figura 14 – Formato típico de um pacote assíncrono

transaction layer pacote1
Transaction Layer – Pacote

Tabela 4 – Tabela com a descrição do pacote

transaction layer transa o
Transaction Layer - Transação
  • Nó 1 envia Read Request;
  • Nó 2 responde com Ack;
  • Enquanto o Nó 1 espera o dado, o barramento é usado por outros nós;
  • Nó 2 envia o pacote com os dados;
  • Nó 1 responde com Ack;
transaction layer transa o1
Transaction Layer - Transação

Figura 15 – Típica transação dividida

transaction layer tipos de transa o
Transaction LayerTipos de Transação

Figura 16 – Tipos de transação

serial bus management layer
Serial Bus Management Layer
  • Topologia lógica;
  • Mapa de velocidade;
  • Gerenciamento de energia;
  • Otimiza o tráfego do barramento.
curiosidades
Curiosidades
  • A Apple nunca pretendeu cobrar para o uso do nome FireWire. Podia ser usado por qualquer parte, desde que assinasse um acordo de que usaria o nome para um produto que era compatível com a versão original do padrão IEEE 1394-1995. Porém Steve Jobs estava convencido de que a Apple devia pedir US$ 1.00 por porta.

Os lucros resultantes da cobrança de US$ 1.00 por porta de FireWire era significativo, particularmente os valores cobrados à Intel. A Intel tinha apostado muito na tecnologia do padrão IEEE 1394 com o novo padrão melhorado 1394a-2000. Em virtude disto, um grupo dentro da Intel usou este argumento para abandonar o apoio à tecnologia FireWire e trazer à luz do dia o novo e melhorado USB 2.0.

Simultaneamente, a Sony e os outros partidários da tecnologia fizeram ver à Apple que todos eles tinham igualmente patentes e, conseqüentemente, também tinham direito a parte dos royalties cobrados por porta FireWire. Apple teria que pagar aproximadamente US$ 15.00 por porta aos outros criadores de tecnologia FireWire

O resultado final foi a criação da 'Autoridade de Licenciamento 1394', um organismo que cobra um valor de US$ 0.25 por sistema de usuário final (como um carro ou computador) a qualquer empresa que utilize a tecnologia 1394.

curiosidades1
Curiosidades
  • A implementação do FireWire custa um pouco mais do que a do USB. Isso levou o USB a ser padrão para a maioria dos periféricos que não necessitam de um barramento de alta velocidade.
  • a grande diferença entre o FireWire e o USB 2.0 é que este último é baseado no host, o que significa que o dispositivo tem que estar conectado a um computador para realizar a comunicação. O FireWire é peer-to-peer (ponto a ponto), o que significa que duas câmeras FireWire podem se comunicar entre si sem passar por um computador.
bibliografia
Bibliografia
  • http://www.infowester.com/firewire.php
  • http://www.guiadohardware.net/tutoriais/usb-firewire-dvi/firewire-ieee-1394.html
  • http://www.apple.com/br/firewire/
  • http://www.gta.ufrj.br/grad/04_2/firewire/tecnologia.html
bibliografia1
Bibliografia
  • http://www.pcworld.com/article/id,14371-page,1/article.html
  • http://sss-mag.com/newiss10.html#firewire
  • http://www.linux1394.org/
  • http://public.rz.fh-wolfenbuettel.de/~bermbach/research/firewire/files/basics.pdf
bibliografia2
Bibliografia
  • http://www.gta.ufrj.br/grad/04_2/firewire/firewire_usb.html
  • http://pt.wikipedia.org/wiki/FireWire