• Nenhum resultado encontrado

PCI - PERIPHERAL COMPONENT INTERCONNECT

N/A
N/A
Protected

Academic year: 2021

Share "PCI - PERIPHERAL COMPONENT INTERCONNECT"

Copied!
21
0
0

Texto

(1)

PCI - PERIPHERAL

COMPONENT INTERCONNECT

PCI - PERIPHERAL

COMPONENT INTERCONNECT

n

Desenvolvido por um consórcio liderado pela Intel

juntamente com a Compaq, DEC, IBM e NCR.

n

O PCI surgiu como uma resposta direta a dois

problemas:

uconstatação da grande ociosidade dos processadores enquanto operações de E/S estavam em andamento;

uarquitetura dos dispositivos de E/S dependente do barramento local do processador ⇒mercado abarrotado de diferentes arquiteturas;

n

Além da independência da arquitetura, o PCI oferece

uma alta taxa de transferência

rajada.

HISTÓRICO DO PCI

HISTÓRICO DO PCI

n

Versão 1.0: junho de 1992.

n

Versão 2.0: abril de 1993.

n

Versão 2.1: primeiro trimestre de 1995.

n

Versão 2.2: fevereiro de 1999.

u33 ou 66 MHz, 32 ou 64 bits, 132, 264 ou 528 MB/s

n

Versão 2.3.

n

PCI Express: E/S serial, >1GB/s.

n

PCI-X 1.0: > 1GB/s.

n

PCI-X 2.0 266: > 2.1 GB/s

n

PCI-X 2.0 533: > 4.2GB/s.

Compatíveis no nível do software com as especificações anteriores

(2)

CARACTERÍSTICAS DO PCI

CARACTERÍSTICAS DO PCI

n Comunicação direta entre periféricos, sem a intervenção do processador.

n Arquitetura independente do processador obtida através de circuitos denominados PONTES:

u múltiplas operações simultâneas;

u segregação de periféricos de acordo com o seu desempenho. n Suporta até 256 barramentos.

CARACTERÍSTICAS DO PCI

CARACTERÍSTICAS DO PCI

n Conexão máxima de 10 “cargas” ao barramento:

u dispositivos embutidos na placa mãe; u conectores;

u cartões de expansão.

n Transferências podem ser feitas no modo-rajada.

n Auto-configurável.

n Especificação define conectores e placas adicionais.

n Expansão através de pontes PCI-PCI.

PROCESSADOR HOST/PCIPONTE

PONTE PCI/PCI

SLOT SLOT SLOT

(3)

CARACTERÍSTICAS DO PCI

CARACTERÍSTICAS DO PCI

n

Dispositivo X Função.

n

Cada dispositivo físico pode conter até 8 dispositivos

lógicos. Exs.:

uplaca de rede Ethernet + porta paralela;

uplaca de som + controlador de “joystick”.

n

Como cada barramento suporta até 10 “cargas”

suporte para até 80 dispositivos lógicos (funções) por

segmento.

n

256 segmentos X 80 funções/segmento = 20480

funções.

CARACTERÍSTICAS DO PCI

CARACTERÍSTICAS DO PCI

n As transações no barramento sempre envolvem duas “entidades”:

uIniciador (“initiator”), também chamado de mestre do barramento; uAlvo (“target”).

n Capacidade de realizar transferências em rajada (“burst transfer”).

uUma única fase de endereçamento (endereço inicial fornecido pelo iniciador e armazenado pelo alvo + comando ou tipo de transação).

uUma ou mais fases de dados.

uIncremento do endereço realizado pelo dispositivo alvo.

Endereço e

comando Dado Dado Dado Dado

n As transações são sincronizadas com a borda de subida do sinal de clock⇒barramento síncrono.

(4)

ARBITRAGEM DO BARRAMENTO

ARBITRAGEM DO BARRAMENTO

uO PCI utiliza o esquema de arbitragem centralizada.

uToda transação inicia-se por uma requisição de uso:

l O iniciador solicita o uso do barramento ativando a sua linha REQn#.

l O árbitro verifica as prioridades dos pedidos pendentes.

l O árbitro permite acesso a um dos dispositivos solicitantes ativando a sua linha GNTn#.

l O dispositivo torna-se o MESTRE DO BARRAMENTO.

Linhas de solicitação

REQn#e concessão

GNTn#individuais. Árbitro instalado em uma das pontes, norte ou sul.

ARBITRAGEM DO BARRAMENTO

ARBITRAGEM DO BARRAMENTO

n

O novo mestre deve aguardar que o mestre anterior

termine a sua última transação:

ulinhas FRAME# e IRDY# desabilitadas simultaneamente*.

n

O algoritmo para determinação do vencedor não é

definido pela especificação do PCI:

u“o árbitro deve utilizar um algoritmo confiável de forma a evitar a monopolização do barramento mesmo por dispositivos de alta prioridade” ⇒depende do fabricante.

n

O árbitro deve ser um dispositivo programável:

uprogramado pela BIOS e/ou pelo SO durante a inicialização;

(5)

ARBITRAGEM DO BARRAMENTO

ARBITRAGEM DO BARRAMENTO

n Os dispositivos PCI possuem três registradores* utilizados para definição da sua prioridade de acesso ao barramento e para o tempo de monopolização:

u Max_Lat: Maximum Latency - escrito pelo fabricante, indica o quão rapidamente o dispositivo requer acesso ao barramento de forma a funcionar adequadamente (em intervalos de 250 ns). Usado para programar o árbitro. u Min_Gnt: Minimum Grant - escrito pelo fabricante, indica por quanto tempo

o dispositivo gostaria de manter a posse do barramento de forma a funcionar adequadamente (em intervalos de 250 ns). Usado para programar o LT. u LT: Latency Timer - escrito pela BIOS e/ou pelo SO, define o número

mínimo de ciclos de clock que o dispositivo terá para realizar as transações. n A arbitragem é realizada enquanto o barramento está em uso por

outro dispositivo ⇒arbitração escondida ⇒possível devido às linhas REQn# e GNTn#.

OS GRUPOS DE SINAIS

(6)

OS GRUPOS DE SINAIS

OS GRUPOS DE SINAIS

uO PCI é multiplexado no tempo ⇒as mesmas linhas transportam endereços e dados.

uFase de endereçamento:

l endereço de memória ou dispositivo de E/S nas linhas AD[31:0];

l comando* (tipo de transação) nas linhas C/BE[3:0] (exs.: escrita em memória, leitura de dispositivo de E/S, reconhecimento de interrupção);

l bit de paridade par na linha PAR. A paridade é calculada com base nas linhas AD[31:0] e C/BE[3:0];

l todos os dispositivos devem decodificar o endereço de forma a verificar qual deles é o alvo da transação;

l o alvo deve ativar a linha DEVSEL#, indicando que foi selecionado;

l quando o mestre e o alvo forem determinados termina a fase de endereçamento e iniciam-se as fases de dados.

OS GRUPOS DE SINAIS

OS GRUPOS DE SINAIS

uFases de dados:

l as linhas AD[31:0] transportam os dados a serem transmitidos;

l para cada dado transmitido o dispositivo alvo deve armazenar e incrementar o endereço inicial fornecido pelo iniciador, quando for o caso;

l as linhas C/BE[3:0] identificam quais bytes devem ser considerados nos dados que foram transmitidos;

l novamente, bit de paridade par na linha PAR. A paridade é calculada com base nas linhas AD[31:0] e C/BE[3:0];

C/BE[3:0] Significado

0000 Todos os 4 bytes são válidos e foram transmitidos pelo iniciador.

0001 O iniciador transmitiu somente os três bytes mais significativos, portanto o menos significativo deve ser ignorado.

0010 O iniciador transmitiu os dois bytes mais significativos e o byte menos significativo. O segundo menos significativo deve ser

(7)

OS GRUPOS DE SINAIS

OS GRUPOS DE SINAIS

u Linha PERR#: erro de paridade. A ação tomada pelo iniciador depende do projeto do fabricante (ex.: novas tentativas ou geração de uma interrupção). u A linha SERR#: erros severos. Geralmente leva a uma interrupção não

mascarável através do pino NMI do processador.

u A linha CLK distribui o sinal de relógio entre os dispositivos. u A linha RST# leva os dispositivos a um estado inicial (reset):

l registradores de configuração;

l máquinas de estado;

l transceivers de acesso ao barramento;

u FRAME#, TRDY#, IRDY#, STOP#, DEVSEL# e IDSEL# →controle das

transações*.

u INTA#, INTB#, INTC#, INTD#: interrupções de hardware*.

COMANDOS

COMANDOS

uOs comandos são usados para identificar o tipo de transação que o iniciador quer fazer

uDurante a fase de endereçamento o comando é fornecido nas linhas C/BE[3:0].

C/BE[3:0] Significado

0000 Reconhecimento de interrupção. 0001 Ciclo especial.

0010 Leitura de dispositivo de E/S. 0011 Escrita em dispositivo de E/S. 0100 Reservado. 0101 Reservado. 0110 Leitura de memória. 0111 Escrita em memória. 1000 Reservado. 1001 Reservado. 1010 Leitura de configuração. 1011 Escrita de configuração. 1100 Leitura múltipla da memória. 1101 Ciclo de endereçamento duplo. 1110 Leitura de linha de memória. 1111 Escrita e invalidação da memória.

(8)

OPERAÇÃO DO BARRAMENTO

OPERAÇÃO DO BARRAMENTO

n

Otimizada

usem estados de espera

OPERAÇÃO DO BARRAMENTO

OPERAÇÃO DO BARRAMENTO

n

Não-otimizada

ucom estados de espera.

(9)

REGISTRADORES DE CONFIGURAÇÃO

REGISTRADORES DE CONFIGURAÇÃO

n

Todo dispositivo PCI possui um espaço de memória onde

residem os registradores de configuração.

n

Estes registradores ocupam um bloco de 64 palavras de 32

bits.

n

As primeiras 16 palavras constituem o cabeçalho dos

registradores de configuração:

upossuem formato fixo, determinado pela especificação do barramento;

usão de implementação obrigatória para qualquer dispositivo PCI;

ualguns registradores podem não ser implementados, mas a sua posição deve ser mantida.

3 2 1 0

ID do dispositivo ID do fabricante 00

Registrador de estado Registrador de comando 01

Código de classe ID da revisão 02

BIST Tipo de cabeçalho Tempo de latência Linha da cache 03 Endereço base 0 04 Endereço base 1 05 Endereço base 2 06 Endereço base 3 07 Endereço base 4 08 Endereço base 5 09 Apontador CIS CardBus 10

ID do subsistema ID do fabricante do subsistema 11

Endereço base da ROM de expansão 12 RESERVADO Ponteiro p/

capacidades 13

RESERVADO 14

Max_Lat Min_Gnt Pino de interrupção Linha de Interrupção 15 n

Cabeçalho dos

registradores de

configuração.

n

Os registradores

marcados com

cinza são

obrigatórios.

n

Os registradores 16

a 63 permitem a

configuração de

novas capacidades.

(10)

REGISTRADORES DE IDENTIFICAÇÃO

REGISTRADORES DE IDENTIFICAÇÃO

n Permitem que o sistema operacional identifique o dispositivo e

carregue um controlador (device driver) compatível:

u ID do fabricante: somente leitura. Identifica o fabricante do dispositivo. Fornecido pelo consórcio PCI-SIG.

u ID do dispositivo: somente leitura. Identifica o dispositivo. Gravado pelo fabricante.

u ID da revisão: somente leitura. Identifica a revisão do dispositivo. Gravado pelo fabricante e usado em dispositivos que sofrem atualizações periódicas. u ID do subsistema e do fabricante do subsistema: utilizados quando o

dispositivo é construído sobre um núcleo (core) PCI de outro fabricante. u Código da classe: registrador dividido em 3 grupos que identificam a função

básica do dispositivo, a sub-classe e uma interface de programação.

Classe Sub-classe Interface

23 16 15 8 7 0

REGISTRADORES DE IDENTIFICAÇÃO

REGISTRADORES DE IDENTIFICAÇÃO

n Códigos de classe:

n Códigos de sub-classe e interface

Controlador de Barramento serial Disp. de acquisição de dados e proces. de sinais 11h

0Ch .

Controlador de dispositivos sem-fios 0Dh . Controlador de rede 02h Descrição Classe Outros controladores de DP Data Process. IO Descrição 00h 80h 00h 00h Interface Sub-Classe

Controlador USB usando UHC FireWire Descrição 00h 03h 00h 00h Interface

Sub-Classe Serial bus

Data Acquis

(11)

uIndica quais operações o dispositivo é capaz de realizar

REGISTRADOR DE COMANDO

REGISTRADOR DE COMANDO

REGISTRADOR DE ESTADO

REGISTRADOR DE ESTADO

(12)

REGISTRADOR

PINO DE INTERRUPÇÃO

REGISTRADOR

PINO DE INTERRUPÇÃO

uO barramento PCI utiliza 4 vias de interrupções denominadas INTA#, INTB#, INTC# e INTD#.

uO registrador Pino de Interrupçãoidentifica a qual destas vias a função utiliza, de acordo com a tabela abaixo.

Sinal de interrupção ligado ao pino... Valor armazenado no registrador 15 O dispositivo não gera interrupções 00 H

Pino INTA# 01 H Pino INTB# 02 H Pino INTC# 03 H Pino INTD# 04 H

uEste registrador é de somente leitura e é escrito pelo fabricante.

REGISTRADORES DE INTERRUPÇÃO

REGISTRADORES DE INTERRUPÇÃO

uQuando um dispositivo PCI

gera interrupção via as linhas INTA# ... INTD#, estas interrupções são mapeadas em IRQs de 0 a 15.

uO registrador Linha de

Interrupção indica a qual IRQ o dispositivo foi associado, de acordo com a tabela abaixo.

uEste registrador é escrito durante a inicialização do sistema pelo software da BIOS.

Dispositivo associado à interrupção de sistema Valor armazenado no registrador 15 IRQ0 0 d IRQ1 1 d IRQ2 2 d IRQ3 3 d IRQ4 4 d IRQ5 5 d IRQ6 6 d IRQ7 7 d IRQ8 8 d IRQ9 9 d IRQ10 10 d IRQ11 11 d IRQ12 12 d IRQ13 13 d IRQ14 14 d IRQ15 15 d

(13)

REGISTRADORES

ENDEREÇO BASE

REGISTRADORES

ENDEREÇO BASE

n

Permitem que o sistema operacional:

uidentifique quantos segmentos de memória o dispositivo necessita;

uidentifique o tamanho de cada um dos segmentos;

ureserve o espaço de memória necessário;

uinforme ao dispositivo os segmentos associados a ele;

uarmazene esta informação nas suas tabelas de controle internas.

n

Estes registradores, portanto, permitem que cada

dispositivo tenha um espaço de endereçamento único e,

portanto, uma identificação única no barramento.

INTERRUPÇÕES

INTERRUPÇÕES

n

O PCI oferece 3 opções de geração de interrupções:

umétodo legado.

umétodo para sistemas multiprocessados

uInterrupções sinalizadas por mensagens (MSI)

n

Método legado:

usubmete pedidos de interrupção através do pino INTR do processador;

umétodo “herdado” do barramento ISA;

uutiliza os pinos INTA#, INTB#, INTC# e INTD#;

(14)

INTERRUPÇÕES

INTERRUPÇÕES

n Método para sistemas multiprocessados:

u as linhas INTA#, INTB#, INTC# e INTD# são ligadas a um dispositivo denominado APIC (Advanced Programmble Interrupt Controller);

u este dispositivo comunica-se com os processadores através de um barramento exclusivo;

u através de troca de mensagens o APIC informa ao processador qual dispositivo está gerando a interrupção.

n Método de Interrupções sinalizadas por mensagens (MSI):

u método definido na especificação 2.2 do PCI;

u as interrupções são geradas através de transações similares a escritas em memória;

u cada dispositivo capaz de realizar MSI recebe um conjunto de mensagens que pode utilizar e um endereço de memória em que deve gravar estas mensagens para sinalizar a interrupção.

INTERRUPÇÕES

: MÉTODO LEGADO

INTERRUPÇÕES

: MÉTODO LEGADO

n

Encontrado em computadores monoprocessados da

família Intel X86.

n

INTA#, INTB#, INTC# e INTD# são compartilhadas

entre vários dispositivos.

n

Dispositivos com somente uma função devem

obrigatoriamente utilizar o pino INTA#.

n

Dispositivos com duas ou mais funções podem utilizar as

linhas livremente, entretanto sempre em ordem

crescente.

(15)

INTERRUPÇÕES

: MÉTODO LEGADO

INTERRUPÇÕES

: MÉTODO LEGADO

n O barramento PCI manteve a estrutura utilizada no ISA, com 2 controladores de interrupção PIC 8259A.

n Dispositivos PCI são ligados aos controladores através de um Roteador de Interrupções.

n As formas de ligação entre os dispositivos e o roteador não são especificadas, ficando por conta do fabricante definir a melhor forma.

n Por exemplo, é possível:

l conectar todas os pinos INTn# a uma única entrada do roteador;

l conectar todos os INTA# a uma entrada, os INTB# a outra, etc.;

l implementar uma entrada para cada pino de cada periférico.

INTERRUPÇÕES:

O MÉTODO LEGADO

INTERRUPÇÕES:

O MÉTODO LEGADO

n

Uma entrada para

cada periférico:

umelhor esquema de ligação. ucada dispositivo possui acesso imediato ao roteador.

uas linhas não são compartilhadas.

udifícil de implementar.

(16)

INTERRUPÇÕES:

O MÉTODO LEGADO

INTERRUPÇÕES:

O MÉTODO LEGADO

n

Esquema mais

comum.

uBalanceamento de carga entre as entradas do roteador. uO roteador associa as suas entradas a 4 IRQs dos PICs

INTERRUPÇÕES:

O MÉTODO LEGADO

INTERRUPÇÕES:

O MÉTODO LEGADO

n O roteador de interrupções é programável:

u a BIOS “sabe” como são feitas as conexões no barramento;

u durante a inicialização a BIOS verifica quais entradas do roteador estão sendo utilizadas e quais IRQs dos PICs não estão sendo utilizadas por dispositivos ISA;

u a BIOS programa o roteador para associar cada uma de suas entradas a uma IRQ disponível;

u Exemplo de roteamento:

l o pino INTA# do conector 1 está fisicamente ligado à entrada 3 do roteador. Esta entrada está programa para acionar a IRQ13 do PIC.

u O roteador pode ser reprogramado pelo sistema operacional.

u Após a programação, o S.O. armazena esta informação no registrador Linha de Interrupção de cada dispositivo.

(17)

INTERRUPÇÕES:

O MÉTODO LEGADO

INTERRUPÇÕES:

O MÉTODO LEGADO

n

Como vários dispositivos compartilham a mesma

interrupção, as rotinas de tratamento de interrupções

(ISR) são associadas da seguinte forma:

IRQx Tabela de vetores de interrupções ISR3 ISR2 ISR1

ISRs associadas à IRQx

Problemas???

INTERRUPÇÕES SINALIZADAS

POR MENSAGENS

INTERRUPÇÕES SINALIZADAS

POR MENSAGENS

n

A MSI é um método similar a uma escrita em memória e

oferece as seguintes vantagens:

uelimina a necessidade de vias de interrupções na placa mãe;

uelimina o compartilhamento de interrupções;

uelimina o encadeamento de ISRs e o problema das prioridades.

n

Dispositivos capazes de realizar MSI possuem dois

registradores adicionais:

uRegistrador de Endereço de Mensagem.

(18)

INTERRUPÇÕES SINALIZADAS

POR MENSAGENS

INTERRUPÇÕES SINALIZADAS

POR MENSAGENS

n Durante a inicialização a BIOS verifica se o dispositivo é capaz de realizar MSI.

n Caso positivo, a BIOS verifica quantas mensagens diferentes o dispositivo necessita para gerar interrupções.

n A BIOS então escreve:

u um endereço de memória no Registrador de Endereço de Mensagem. Este endereço será escrito pelo dispositivo para sinalizar uma interrupção. u uma ou mais mensagens no Registrador de Dados de Mensagens. Assim o

dispositivo pode sinalizar vários eventos diferentes usando interrupções. n Quando o dispositivo deseja gerar uma interrupção ele escreve

uma mensagem definida em um endereço de memória pré-definido.

n A forma como o sistema trata a interrupção depende do chipset.

CONECTORES PCI

CONECTORES PCI

uDerivados dos conectores Micro Channel. uExistem 4 tipos: l 5V de 32 bits; l 5V de 64 bits; l 3,3V de 32 bits; l 3,3V de 64 bits. uOs conectores possuem guias para evitar a troca de cartões.

(19)

CONECTORES PCI

CONECTORES PCI

uA especificação define 3 tamanhos de cartões: l o padrão ou longo, medindo 12.283” x 4.2”; l cartões compactos, medindo 4.2” x 6.875”;

l cartões com altura variável, cujo valor pode estar entre 1.42” a 4.2”.

A ESPECIFICAÇÃO cPCI

A ESPECIFICAÇÃO cPCI

uO padrão PCI Compacto foi desenvolvido pela organização PCIMG para o uso do barramento PCI em aplicações industriais mais severas.

uO padrão define a montagem da especificação PCI em uma estrutura mecanicamente e eletricamente mais robusta.

uO PCI Compacto utiliza o fator de forma Eurocard nos tamanhos 3U e 6U.

uEste formato tem sido usado há anos em sistemas embutidos e em aplicações de telecomunicações, controle de processos, servidores de alto desempenho, etc.

uA especificação é 100% compatível com a especificação PCI, nos níveis de software e hardware.

(20)

A ESPECIFICAÇÃO cPCI

A ESPECIFICAÇÃO cPCI

uO fator de forma Eurocard disponibiliza 5 conectores.

uO PCI Compacto utiliza apenas 2 destes: l J1 para o barramento de 32 bits;

l J1 e J2 para o barramento de 64 bits;

PLACA COM CONECTOR EUROCARD

(21)

A ESPECIFICAÇÃO cPCI

A ESPECIFICAÇÃO cPCI

uAs placas PCI Compacto são conectados entre si através de uma barramento “backplane”. uA CPU do sistema também

ocupa um cartão individual (system slot), o que otimiza a manutenção do sistema no caso de defeito.

uAo contrário da especificação PCI normal, o PCI Compacto oferece 8 conectores de expansão.

A ESPECIFICAÇÃO cPCI

A ESPECIFICAÇÃO cPCI

uO sistema é instalado em gabinetes que otimizam a manutenção. uOs gabinetes oferecem uma estrutura mecânica mais robusta. uDevem atender a requisitos de compatibilidade eletromagnética e de ventilação.

Referências

Documentos relacionados

Nessa situação temos claramente a relação de tecnovívio apresentado por Dubatti (2012) operando, visto que nessa experiência ambos os atores tra- çam um diálogo que não se dá

Desta maneira, observando a figura 2A e 2C para os genótipos 6 e 8, nota-se que os valores de captura da energia luminosa (TRo/RC) são maiores que o de absorção (ABS/RC) e

Objetivando avaliar a utilização de óleos vegetais de diferentes origens em rações no desempenho e características de carcaça do escargot francês “gros gris” (Helix

- Se o estagiário, ou alguém com contacto direto, tiver sintomas sugestivos de infeção respiratória (febre, tosse, expetoração e/ou falta de ar) NÃO DEVE frequentar

o item anterior, reconsideração quanto ao indeferimento de sua inscrição, que será apreciada pela Congregação no prazo máximo de 5 dias úteis, contados a partir

(05/06/2003 disponível em: <www.folha.com.br>) Esses dados mostram que existe uma grande preocupação mundial com os recursos hídricos potáveis. 02) A preservação das

O objetivo deste artigo é justamente abordar uma metodologia alternativa para a elaboração de análises contábeis e financeiras, denominada de balanço perguntado e

ABSTRACT: The toxicological effects of crude ethanolic extracts (CEE) of the seed and bark of Persea americana have been analyzed on larvae and pupae of