Ermeson Andrade. Um computador consiste de um conjunto de componentes (memória, CPU, E/S) que se...

Post on 18-Apr-2015

109 views 0 download

Transcript of Ermeson Andrade. Um computador consiste de um conjunto de componentes (memória, CPU, E/S) que se...

BarramentoErmeson Andrade

Um computador consiste de um conjunto de componentes (memória, CPU, E/S) que se comunicam entre si

Ele é uma rede de componentes básicos e devem existir caminhos de conexão entre esses componentes

A coleção de caminhos que conectam os vários componentes ou módulos é chamada estrutura de interconexão

Estruturas de Interconexão

Módulos do computador

Dados

MemóriaMemória

N Palavras N Palavras

0 0 . . . . . . N NDados

Endereço

Leitura

Escrita

Dados Int

Dados Ext

InterruptMódulo de Módulo de E/SE/S

Dados Int

Endereço

LeituraEscrita

Dados Ext

Sinal Ctrl

Dados

CPUCPU

Interrupt

Instrução

Dados

As setas grossas representa as linhas de sinais transportando informação.

Tipos de transferências geralmente suportada:

Estrutura de Interconexão

MemóriaMemória

N Palavras N Palavras

0 0 . . . . . . N N

CPUCPU

Módulo Módulo dedeE/SE/S

CPU lê dados e Instruções

CPU escreve dados

DM

A

Várias estruturas de interconexão tem sido utilizada ao longo dos anos

As estruturas mais comuns são o barramento e múltiplos barramentos

Barramento é um caminho de comunicação entre dois ou mais dispositivos

Interconexão de Barramentos

Características:◦ Meio de transmissão Compartilhado◦ Um sinal pode ser recebido por todos os

dispositivos conectados ao barramento◦ Somente um dispositivo pode transmitir sinais

pelo barramento em um determinado instante (Evitar adulteração de sinais)

Um barramento consiste em várias linhas de comunicação

Cada linha é capaz de transmitir apenas um dígito binário (0 e 1)

Interconexão de Barramentos

Barramento

Transmissão Serial◦ Um bit é transmitido por vez

Transmissão Paralela◦ Vários bits podem ser transmitidos

simultaneamente. Para 1 byte (8 bits) é necessário 8 linhas de comunicação (caminhos)

Barramento de Sistema◦ Conecta principais componentes do computador

Barramentos

Um barramento do sistema contém de 50 a 100 linhas distintas

Cada linha tem uma função particular

Barramentos

As linhas de dados fornecem o caminho para transferência de dados entre os módulos

A largura (quantidade de linhas) determina a quantidade de dados transmitidos por vez

Parâmetro fundamental para o desempenho global do sistema

Barramento de Dados

CPU Memória Memória E/S E/S

Linhas de Endereço

. . .

Linhas de Controle

Linhas de Dados

. . .

São as linhas de Endereço destinadas a informar a fonte e destino dos dados no barramento de dados

A largura (quantidade de linhas) determina a quantidade máxima da memória do sistema

São também usadas para endereçar as portas de E/S

Barramento de Endereço

CPU Memória Memória E/S E/S

Linhas de Endereço

. . .

Linhas de Controle

Linhas de Dados

. . .

Usadas para controlar o acesso das linhas de dados e endereços

Utilizados tanto para transmitir comandos quanto para transmitir informações de temporização

Temporização informa a validade de dados e endereços

Controle especificam as operações

Barramento de Controle

CPU Memória Memória E/S E/S

Linhas de Endereço

. . .

Linhas de Controle

Linhas de Dados

. . .

Exemplo de linhas de controle◦ Escrita na memória◦ Leitura de memória◦ Escrita em porta de E/S◦ Confirmação (ACK) de transferência: Aceitação de

dados no barramento.◦ Requisição de Barramento◦ Concessão do Barramento◦ Requisição de interrupção◦ Confirmação (ACK) de interrupção◦ Relógio◦ Inicialização (Reset)

Barramento de Controle

Envio de dados de um módulo para outro:◦ Obter o controle do Barramento◦ Transferir os dados por meio do barramento

Requisitar dados de outro módulo◦ Obter o controle do barramento◦ Transferir uma requisição para o outro módulo por

meio das linhas de endereço e controle apropriadas

◦ Aguardar que os dados sejam enviados

Operações dos barramentos

Fisicamente, barramento do sistema é um conjunto de condutores elétricos paralelos

Esses condutores são linhas de metal impressas em uma placa (placa de circuito impresso)

Barramento

O desempenho do sistema pode ser prejudicado caso o número de dispositivos conectados a um barramento seja muito grande.

As principais causas são:◦ Para muitos dispositivos, é necessário um

barramento comprido. Maior atraso na propagação dos sinais

◦ O barramento pode se tornar um gargalo devido ao aumento da transferência de dados

Hierarquia de Barramento

Solução: Utilização de Múltiplos Barramentos organizados de forma hierárquica

Hierarquia de Barramento

Processador CacheLocal Bus

ControladorLocal de E/S

Barramento de Sistema

MemóriaPrincipal

Barramento de Expansão

Rede SCSI Modem Serial

Interface do Barramento de Expansão

Evita que o tráfego Memória-componentes de E/S afetem as atividades do processador

Interface de expansão de Barramentos serve como área de armazenamento temporário.

Permite conectar uma grande variedade de dispositivos, e isola o tráfego da comunicação Processador - Memória

Hierarquia de Barramento

Arquitetura Mezanino◦ Bom desempenho◦ Barramento de Alta Velocidade para dispositivos de E/S

modernos◦ Menos impacto de dispositivos mais lentos

Hierarquia de Barramento

ProcessadorCache /

ControladorLocal BusLocal Bus Memória

Principal

Barramento de Expansão

FAX Modem Serial

Interface do Barramento

de Expansão

Barramento de Alta Velocidade

P1394 SCSI Gráficos VídeoLAN

BarramentoBarramentode Sistemade Sistema

Tipo Largura do barramento

Dedicado Endereço

Multiplexado Dados

Método de Arbitração Tipo de Transferência de Dados

Centralizado Leitura

Distribuído Escrita

Temporização Lê-Modifica-Escreve

Síncrono Lê-Após-Escrita

Assíncrono Bloco

Elementos do Projeto de Barramento

Dedicado◦ Cada linha do barramento tem função fixa ◦ Ex: Linhas de Endereços e Dados separadas◦ Alta taxa de transferência de Dados◦ Custo Maior e Requer mais Espaço

Multiplexado◦ Dados e endereços utilizam as mesmas linhas◦ Linha de controle informa o tipo de dado◦ Custo menor ($) e Requer menos espaço◦ Menor taxa de transferência e Mais complexo

Tipo de Barramento

Linhas Compartinhadas Endereço e Dados

Módulo 1 Módulo 2 Módulo 3

Linha de Controle

Exemplo Requisição de Dados

Tipo de Barramento

Endereço

Módulo 1 Módulo 2 Módulo 3

Linha de Controle : Endereço

Endereço colocado no Barramento Compartilhado

Tipo de Barramento

Endereço

Módulo 1 Módulo 2 Módulo 3

Linha de Controle : Endereço

Todos módulos recebem

Tipo de Barramento

Endereço

Módulo 1 Módulo 2 Módulo 3

Linha de Controle : Endereço

O módulo associado ao endereço aguarda a remoção do sinal de endereço da linha de controle

Tipo de Barramento

Dados

Módulo 1 Módulo 2 Módulo 3

Linha de Controle

Depois de um tempo o master remove o sinal de endereço. Multiplexação por Tempo

Tipo de Barramento

Somente um componente pode usar o barramento por vez

Necessário de um mecanismo de arbitração para indicar quem irá usar o barramento

Métodos:◦ Centralizado◦ Distribuído

Métodos de Arbitração

Centralizado◦ Dispositivo de Hardware (Controlador de

Barramento ) que é responsável por alocar tempo de utilização do barramento a cada módulo

◦ Pode fazer parte do processador Distribuído

◦ Cada módulo tem uma lógica de controle de acesso

◦ Os módulos agem de forma conjunta para compartilhar o barramento

Métodos de Arbitração

Em ambos os métodos, o objetivo é designar um dispositivo como mestre (seja processador ou um módulo de E/S)

O mestre é a unidade que controla a transferência de dados (leitura ou escrita) com outros dispositivos (escravo)

O Mestre tem o controle do barramento e determina quem poderá usar o barramento em cada instante

Métodos de Arbitração

Se o algoritmo de arbitragem não é bom o suficiente pode acontecer de uma unidade requisitando uso do barramento nunca ser atendida.

Métodos de Arbitração

A temporização refere-se ao modo pelo qual os eventos nesse barramento são coordenados

Formas:◦ Síncrona : Os eventos do barramento é

determinado por um clock.◦ Assíncrona: A ocorrência de um evento em um

barramento segue e depende da ocorrência de um evento anterior.

Temporização

Barramento de Dados◦ Impacto sobre o desempenho do sistema◦ Quanto maior a largura, maior o número de bits

transferidos por vez

Barramento de Endereços◦ Impacto sobre a capacidade do sistema◦ Quanto maior a largura, maior é o número de

posições de memória que podem ser endereçadas

Largura do barramento

Escrita e leitura sem multiplexação◦ Todos os barramentos permitem transferência de leitura e

escrita. Escrita com multiplexação

◦ Primeiro especifica os endereços e depois a transferência de dados

Operação de Leitura com multiplexação◦ Primeiro especifica os endereços e aguarda um tempo de

espera enquanto o valor está sendo buscado pelo escravo, para começar a leitura

Tipos de Transferência de Dados

Tipos de Transferência de Dados

Leitura-Modificação-Escrita◦ Uma leitura seguida imediatamente por uma escrita sobre o mesmo

endereço◦ O endereço é transmitido apenas uma vez ,no início◦ A operação é indivisível, afim de proteger que o conteúdo de um mesmo

endereço não seja alterado por outros mestre durante a operação

Leitura-Após-Escrita◦ Operação Indivisível◦ Escrita seguida imediatamente por um leitura no mesmo endereço◦ Essa leitura pode ser feita com o propósito de verificação

Transferência de Blocos de Dados◦ Um ciclo de endereço é seguido por n ciclos de dados◦ O primeiro dado está relecionado com o endereço especificado, os

demais dados são transferidos usando os endereços subsequentes

Tipos de Transferência de Dados

Tipos de Transferência de Dados

ISA (Industry Standard Architecture)◦ Originalmente era barramento de 8 bits depois foi

expandido para 16 bits (1981)◦ Utilizados para conectar placas de expansão e periféricos

à placa mãe.◦ Caiu em desuso devido ao aumento do poder de

processamento dos processadores.

Barramentos usados no PC

EISA (Extended Industry Standard Architecture)◦ Permitia Transferência de 32 bits de dados◦ Compatibilidade com ISA 8 e 16 bits◦ Não ganhou grande aceitação: Complexo, Caro e Lento

Barramentos usados no PC

PCI (Peripheral Component Interconnect) - 1992◦ Barramento 32 bits e 64 bits◦ Frequência de 33 ou 66 MHz◦ Desenvolvido pela Intel

Barramentos usados no PC

AGP (Advanced Graphic Port) 1997◦ Usados para o processamento de gráficos 3D.◦ 32 bits(primeira versão)◦ Possui uma linha direta para memória, permitindo que os

gráficos sejam guardadas na memória do sistema em vez da memória de vídeo

◦ Substituído pelo PCI Express

Barramentos usados no PC

USB (Universal Serial Bus) 1996◦ Barramento Externo◦ USB 1.1 - Velocidade 12 Mbps◦ USB 3.0 - 4.8 Gbit/s ◦ Até 127 dispositivos conectados◦ Plug and Play

Barramentos usados no PC

Bluetooth É um padrão de comunicação sem fio e de

baixo consumo de energia que permite a transmissão de dados entre dispositivos compatíveis com a tecnologia.◦ Classe 1: potência máxima de 100 mW, alcance

de até 100 metros;◦ Classe 2: potência máxima de 2,5 mW, alcance de

até 10 metros;Classe 3: potência máxima de 1 mW, alcance de até 1 metro.

Barramentos usados no PC