BARRAMENTO DO SISTEMA - IME-USPadao/barramento.pdf · BARRAMENTOS DO SISTEMA ... um novo hardware...

47
1 BARRAMENTO DO SISTEMA Adão de Melo Neto

Transcript of BARRAMENTO DO SISTEMA - IME-USPadao/barramento.pdf · BARRAMENTOS DO SISTEMA ... um novo hardware...

1

BARRAMENTO DO SISTEMA

Adão de Melo Neto

2

BARRAMENTOS DO SISTEMA

O mecanismo mais comum de interconexão dos componentes de um

computador (processador, memória principal e módulos de E/S) usa um

barramento do sistema compartilhado com múltiplas linhas.

Os sistemas mais modernos usam uma hierarquia de barramentos para obter

melhor desempenho.

3

BARRAMENTOS DO SISTEMA

O ciclo de execução de uma instrução é formado das seguinte operações:

• Busca da instrução

• Busca dos Operandos (zero ou mais operandos)

• Teste de Interrupção (caso interrupções estejam habilitadas) e

• Execução da Instrução

4

BARRAMENTOS DO SISTEMA

Computador:

– É composto de componentes lógicos básicos que podem ser

combinados de vários modos para armazenar dados binários e

executar operações lógicas e aritméticas sobre os dados

5

BARRAMENTOS DO SISTEMA Processador (programação em hardware)

– Existe um hardware dedicado para uma aplicação particular

6

BARRAMENTOS DO SISTEMA Processador (programação em software)

– Definir configuração de funções lógicas e aritméticas de propósito geral.

– Existe a capacidade de executar várias funções sobre os dados,

dependendo dos sinais de controle que lhe são aplicados. Em vez de definir

um novo hardware para cada nova aplicação, definir um hardware de

propósito geral, um o conjunto de sinais de controle (relativo a aplicação) e

seu respectivo código que será interpretado por um interpretador de

instruções.

NORMALMENTE

UTILIZADO

7

BARRAMENTOS DO SISTEMA Componentes em Alto Nível de um Computador

– A UCP troca dados com a memória e usa dois registradores internos, o MAR e o

MBR.

– MAR: especifica o endereço de memória a ser usado pela instrução de

leitura/escrita

– MBR: especifica o valor a ser gravado /lido na/da memória.

A memória é composta por células Identificadas

numericamente e Armazena um programa

(conjunto de Instruções)

O módulo de E/S transfere dados de

dispositivos externos para UCP e Memória e

vice-versa.

8

BARRAMENTOS DO SISTEMA Componentes em Alto Nível de um Computador

– I/O AR: especifica um determinado dispositivo de E/S.

– I/O BR: é usado para troca de dados entre um módulo de E/S e a UCP

– PC: é usado para guardar o endereço da próxima instrução a ser executada.

– IR: armazena a instrução buscada na memória

A memória é composta por células Identificadas

numericamente e Armazena um programa

(conjunto de Instruções)

O módulo de E/S transfere dados de

dispositivos externos para UCP e Memória e

vice-versa.

9

BARRAMENTOS DO SISTEMA

A função básica de um computador

Executar um programa (conjunto de instruções) armazenadas na memória

O ciclo de instrução

Consiste no processamento necessário para execução de uma instrução.

Interrupção:

Mecanismo pela qual componentes distintos do processador (E/S e memória)

podem interromper a sequência normal de execução de instruções de um

processador (UCP). visa melhorar a eficiência de um processamento.

BARRAMENTOS DO SISTEMA

SEM INTERRUPÇÃO:

Segmentos de código 01,02 e 03 não envolvem

E/S.

As chamadas as rotinas WRITE iniciam a

execução de uma rotina de sistema que efetua a

operação de E/S requisitada.

– Sequencia de instruções 4 prepara a operação de

E/S requisitada (exemplo: cópia de dados de E/S

para área de armazenamento temporário).

– Comando de E/S propriamente dito.

– Sequencia de instruções 5 para completar a

operação (exemplo: ativação de uma FLAG para

indicar o sucesso ou falha da operação).

A operação de E/S pode levar um tempo longo

para ser concluído. O programa do usuário fica

parado por um tempo considerável.

10

BARRAMENTOS DO SISTEMA

SEM INTERRUPÇÃO:

Processador está transferindo dados para

impressora (que é mais lenta) e portanto

tem que esperar o término da operação de

escrita permanecendo ocioso até que a

impressora consiga capturar os dados, o

que constitui um desperdício de tempo de

processamento

11

BARRAMENTOS DO SISTEMA

COM INTERRUPÇÃO:

Com interrupção o processador pode executar

outras tarefas enquanto uma operação de E/S

está em andamento.

Após o comando de E/S, o controle retorna ao

programa do usuário. Enquanto isso o dispositivo

externo (impressora) preocupa-se em obter os

dados da memória do computador e imprimi-lo,

operação conduzida simultaneamente com a

execução do programa do usuário.

Quando o dispositivo externo (impressora)

finalizou a operação de E/S (impressão), uma

requisição de interrupção é enviada ao

processador pelo módulo de E/S deste dispositivo.

O processador suspende a execução do programa

atual transferindo o controle para um tratador de

interrupção

12

13

Funcionamento da E/S

Acesso Direto à Memória (DMA – Direct Memory Acess)

– Um processador pode ler e escrever dados em um módulo de E/S (da

mesma forma que um processador pode ler ou escrever na memória).

– DMA

O processador permite que o acesso de leitura/escrita na memória

seja feita por um módulo de E/S, de modo que a transferência de

dados entre a memória e a E/S sejam realizadas sem a intervenção do

processador, deixando-o livre da responsabilidade pela troca de

dados.

– .

14

Estruturas de Interconexão

O conjunto e caminhos que conectam os vários módulo de um computador

denomina-se estrutura de interconexão. O projeto desta estrutura depende das

informações trocadas entre os módulos.

15

Estruturas de Interconexão(Principais formas de entrada e saída em módulos de um computador

(MEMÓRIA) )

N palavras de mesmo tamanho com endereço único (0,1,...,N-1).

SINAIS DE CONTROLE

– Uma palavra pode ser lida ou escrita na memória, sendo a natureza da operação

indicada por meio de sinais de controle.

ENDEREÇO:

– posição da memória em que é efetuada uma operação (leitura / escrita )

Sinais de

controle

16

Estruturas de Interconexão

(Principais formas de entrada e saída em módulos de um computador (E/S))

Possui funcionamento similar à memória.

Tipos de Operações: Leitura e Escrita

Pode controlar mais de um dispositivo externo

Cada interface de dispositivo externo, chamada porta, tem um endereço

distinto ( por exemplo 0,1,...,M-1)

Podem enviar sinais de interrupção para o processador.

Existem caminhos externos para entrada (leitura) ou saída (escrita) de

dados em cada dispositivo externo

17

Estruturas de Interconexão

(Formas de entrada e saída em módulos de um computador (processador))

Lê dados e instruções

Escreve dados após o seu processamento

Usa sinais de controle para controlar as operações do sistema como um

todo.

Pode receber sinais de interrupção

18

Estruturas de Interconexão(Tipos de transferências que deve suportar)

Memória Processador

– O processador lê uma instrução ou uma unidade de dados da memória

Processador Memória

– O processador escreve uma unidade de dados na memória

E/S Processador

– O processador lê dados de um dispositivo de E/S via um módulo de E/S.

Processador E/S

– O processador envia dados para um dispositivo de E/S

Dispositivo E/S ↔ Memória

– O módulo de E/S pode trocar dados diretamente com a memória sem

interferência do processador, usando DMA

19

Interconexão de Barramentos Barramento

– Caminho de comunicação entre dois ou mais dispositivos.

– consiste em vários caminhos ou linhas de comunicação cada qual capaz de

transmitir sinais que representam um dígito binário, 0 ou 1. Uma unidade de

dados de 8 bits (por exemplo) pode ser transmitida por 8 linhas de barramento.

20

Interconexão de Barramentos Barramento de Sistema

– Barramento utilizado para conectar os componentes principais do

computador (processador, memória e dispositivo de E/S) .

– É um meio de transmissão compartilhado

– Um sinal transmitido por qualquer dispositivo é recebido por todos os

dispositivos conectados no barramento.

– Se dois dispositivos transmitirem sinais ao barramento ao mesmo

tempo, esses sinais irão se sobrepor e serão adulterados.

– Desta maneira, para que haja sucesso, apenas um dispositivo pode

transmitir sinais pelo barramento a cada instante.

21

Estrutura de Barramentos

As linhas de barramento podem ser classificadas em linhas de dados, linhas de

endereço e linhas de controle.

Linha de Dados

– Contém tipicamente 8, 16 ou 32 linhas que constitui o barramento de dados.

– A Largura do barramento de dados é o número de linhas que constitui o

barramento. Como cada linha conduz 01 bit por vez, a largura determina a

quantidade de bits que podem ser transportadas por vez. É um parâmetro

fundamental do desempenho do sistema.

– Exemplo: se um o barramento de dados possui 8 bits e uma instrução possui 16

bits, o processador deve acessar duas vezes o módulo de memória a cada ciclo

de instrução.

22

Estrutura de Barramentos

Linha de Endereços

– São utilizadas para designar a fonte ou o destino dos dados transportados pelo

barramento de dados.

– Exemplo:

– Quando um processador quer ler uma palavra ( de 8, 16 ou 32 bits) na memória,

ele coloca o endereço desejado nas linhas de endereços.

– Largura do barramento de endereços

– Determina a capacidade máxima da memória principal do sistema

– As linhas de endereços são também utilizadas para endereçar as portas de E/S.

23

Estrutura de Barramentos

Linha de Controle

– São utilizadas para controlar o acesso e a utilização das linhas de dados e de

endereço desde que elas são compartilhadas por todos os módulos de um

computador .

– São utilizados tanto para transmitir comandos quanto informações de

temporização entre os módulos do sistema.

– As linhas de temporização indicam a validade das informações de dados e de

endereços

– As linhas de comando especificam as operações a serem realizadas

24

Estrutura de Barramentos Linha de Controle Típicas

– Escrita na memória

– Leitura de memória

– Escrita em porta de E/S

– Leitura de porta de E/S

– Confirmação (ACK) de transferência

• Confirma o envio ou o recebimento de dados no barramento

– Requisição de barramento.

• Indica que um módulo do sistema deseja obter o controle do barramento

– Concessão de barramento

• Indica a concessão do barramento ao módulo que fez a requisição

25

Estrutura de Barramentos Linha de Controle Típicas

– Requisição de interrupção

• Indica a existência de uma interrupção pendente.

– Confirmação (ACK) de interrupção

• Confirma o reconhecimento de uma interrupção pendente

– Relógio

• Utilizado para temporizar as operações

– Inicialização (reset)

• Inicializa as operações do sistema

26

Estrutura de Barramentos MÓDULO “DESEJA” ENVIAR DADOS PARA OUTRO

– Obter controle do barramento

– Transferir dados por meio do barramento

MÓDULO REQUISITA DADOS DE OUTRO MÓDULO

– Exemplo: processador memória

– Obter controle do barramento

– Transferir requisição para outro módulo por meio de linhas de endereço e

controle adequados.

– Esperar que o outro módulo envie os dados requisitados

27

Hierarquia de Barramentos O desempenho do sistema de barramentos pode ser prejudicado caso o número de

dispositivos seja muito grande

– Maior é seu comprimento (atraso de propagação dos dados)

– A demanda por transferência de dados se aproxima da capacidade do

barramento

28

Arquitetura de Barramento Tradicional

A memória principal é conectada apenas ao barramento de sistema (de

forma que a transferência de dados entre módulo de E/S e a Memória

principal por meio do barramento de sistema não interfiram na atividade

do processador).

Uma interface de expansão serve como área de armazenamento

temporário dos dados transferidos entre o barramento de sistema e os

controladores de E/S conectados ao barramento de expansão.

Esse arranjo permite ao sistema conectar uma grande variedade de

dispositivos de E/S ao mesmo tempo em que isola o tráfego entre

processador e memória do tráfego de E/S.

29

BARRAMENTOS DO SISTEMA

Principais aspectos de um sistema de barramento

– Arbitração

• É a permissão para envio de sinais por meio de linhas do

barramento e pode ser centralizada ou distribuída.

– Temporização

• É o envio de sinais por meio dos barramentos. Pode ser

sincronizada por um relógio central (síncrona) ou pode ser

feita de maneira assíncrona, com base na transmissão mais

recente.

– Largura do barramento

• Número de linhas de endereço e de linha de dados

30

ARBITRAÇÃO

Definição:

– Mecanismo que controla que módulo assumirá o controle do barramento, desde

que apenas um módulo pode realizar a transmissão por meio de barramento por

vez. Por exemplo, a E/S pode precisar ler ou escrever diretamente na memória,

sem enviar dados ao processador.

Os métodos de arbitração podem ser centralizados ou distribuídos.

– Centralizado:

– um único dispositivo (módulo em separado ou parte do processador), é

responsável por alocar o tempo de utilização do barramento.

– Distribuído:

– os módulo agem de forma conjunta para compartilhar o barramento.

31

DIAGRAMAS DE TEMPO

A comunicação entre dispositivos conectados em um barramento ocorre

por meio de linhas capazes de carregar sinais (0 ou 1, representados por

níveis de voltagem).

Um diagrama de tempo mostra o nível de sinal em uma linha em função do

tempo e são utilizados para mostrar sequencias de eventos e

dependências entre os eventos.

Os sinais são algumas vezes representados em grupos. Se, por exemplo, a

transmissão de dados é feita em unidades de bytes, 8 linhas são requeridas

Uma transição de sinal em uma linha pode fazer com que um dispositivo conectado

dispare mudanças de sinal em outras linhas. Por exemplo, se um módulo de

memória detecta um sinal de controle de leitura ( transição de 0 ou 1) ele coloca

sinais de dados nas linhas de dados. Essa relação de causa e efeito produz uma

sequencia de eventos ( que nos diagramas de tempo são representados por setas).

32

DIAGRAMAS DE TEMPO

O barramento inclui linhas de relógio. Um relógio eletrônico é conectado à

linha de relógio e fornece uma sequência repetitiva e regular de transições.

Outros eventos podem ser sincronizados ao sinal do relógio.

33

DIAGRAMAS DE TEMPO

34

TEMPORIZAÇÃO em esquema de transmissão síncrona Em um esquema de transmissão síncrona, a ocorrência dos eventos é determinada

pelo relógio. O barramento contem uma linha de relógio, por meio do qual um

relógio transmite uma sequencia de 0s e 1s.

(1) O processador emite um sinal de leitura (1A) e coloca um endereço de memória

no barramento de endereços (1B). (2) Ele também emite um sinal de iniciar para

marcar a presença do endereço e informação de controle no barramento. (3) Um

módulo de memória reconhece o endereço e depois do atraso de um ciclo (neste

caso uma sequência de um 0 e um 1), coloca os dados (3A) e um sinal de

confirmação no barramento (3B).

2

1(a)

1(b)

3(a)

3(b)

35

TEMPORIZAÇÃO em esquema de transmissão assíncrona

A ocorrência de um evento no barramento depende de um evento ocorrido

anteriormente.

(1) O processador coloca sinais de endereço e de leitura no barramento.

(2) Depois de uma pausa para estabilização dos sinais, o processador emite um

sinal MSYN (sincronismo mestre), indicando a presença de sinais válidos de

endereço e de controle.

(3) A memória responde enviando os dados e um sinal SSYN (sincronismo escravo),

que indica o envio de uma resposta.

(4) Depois do processador ler as linhas de dados, o processador retira os sinais

MSYN do barramento.

(5) Isso faz com que a memória retire os dados e o sinal SSYN do barramento.

(6) uma vez retirada a linha SSYN, o processador remove o sinal de leitura e a

informação de endereço

2,4

3,5

1,6

1,6

4

36

Largura do Barramento

Barramento de Dados

– Quanto maior a largura do barramento de dados maior o número de bits

transferidos por vez.

Barramento de Endereços

– Quanto maior a largura do barramento de endereços, maior é o número de

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

37

Barramento PCI É um barramento de grande largura de banda, que pode funcionar como

barramento periférico. Comparando com outros barramento, apresenta melhor

desempenho para subsistemas de E/S de alta velocidade (tais como adaptadores de

vídeo, placas de rede e controladores de disco)

38

39

40

41

42

43

44

45

46

47

TAXA DE TRANSFERÊNCIA = NR BITS x VELOCIDADE_BARRAMENTO

(MBps) 8