Você está na página 1de 83

edes de Comunicao R

Alguns conceitos bsicos e barramentos do sistema


Arquitetura de computadores

Prof. Wagner B. Coelho

Conceitos
Arquitetura de computadores, dita de maneira formal, a teoria por trs do projeto de computadores aplicada :
Projeto da CPU e suas instrues, alm de tcnicas empregadas Projeto mais genrico do hardware Definio menos formal descrevendo as caractersticas de computadores como interconexes e velocidades ou o projeto e implementao de suas vrias partes
Barramentos Arquitetura de Computadores

edes de Comunicao R

Programao no hardware

edes de Comunicao R

Barramentos

Arquitetura de Computadores

Programao via software

edes de Comunicao R

Barramentos

Arquitetura de Computadores

Arquitetura de Von Neumann


Os computadores atuais seguem a arquitetura proposta por Von Neumann (Instituto de Estudos Avanados, universidade de Princeton, EUA):
Os dados e as instrues so armazenados em uma nica memria de leitura e escrita O contedo dessa memria endereado pela sua posio, independente do tipo de dados nela contido A execuo das instrues ocorre de modo seqencial (exceo: a execuo de uma instruo de desvio altera essa caracterstica)
Barramentos Arquitetura de Computadores

edes de Comunicao R

Conceito de programa
Circuitos eletrnicos construdos com finalidade especfica so inflexveis
edes de Comunicao R

Receptor de televiso, rdio, forno de microondas, ...

Equipamentos eletrnicos construdos com propsito mais geral podem executar tarefas diversas uma vez fornecidos a eles os sinais de controle adequados mais prtico fornecer novos sinais de controle a um equipamento do que reorganizar o seu circuito (hardware)
Barramentos Arquitetura de Computadores

O que um programa?
Uma seqncia de passos Para cada um desses passos uma operao lgica ou aritmtica executada Para cada operao, um conjunto prdefinido de sinais de controle necessrio

edes de Comunicao R

Barramentos

Arquitetura de Computadores

Papel da unidade de controle


Em uma dada arquitetura, para cada operao existe um cdigo nico que referenciado sempre que for necessrio execut-la
Soma: ADD; deslocamento: MOV; ...

edes de Comunicao R

Uma parte do circuito adequadamente concebida, ao receber como entrada o cdigo de uma operao fornece, como sada, os sinais de controle necessrios Eis a um computador!
Barramentos Arquitetura de Computadores

Partes componentes
A Unidade Lgica e Aritmtica (ALU) e a Unidade de Controle (CU) constituem a Unidade Central de Processamento (CPU) Os dados e as instrues precisam ser fornecidos ao sistemas e os resultados devem retornar ao mundo externo
Sistemas de entrada e sada (E/S ou I/O)

edes de Comunicao R

necessrio armazenar temporariamente os cdigos (dados e instrues) e os resultados


Memria principal
Barramentos Arquitetura de Computadores

Organizao de um computador: uma viso global

edes de Comunicao R

Barramentos

Arquitetura de Computadores

10

Ciclo de uma instruo (simplificado)


Busca (fetch) Execuo (execute)
edes de Comunicao R

Barramentos

Arquitetura de Computadores

11

O ciclo de busca (i)


O registrador Program Counter (PC) contm o endereo da prxima instruo a ser executada O processador busca na memria a instruo localizada no endereo contido no PC Incrementa-se o contedo do PC Exceo: uma instruo de desvio

edes de Comunicao R

Barramentos

Arquitetura de Computadores

12

O ciclo de busca (ii)


A instruo carregada no registrador de instruo (IR ou Instruction Register) O processador interpreta a instruo e executa as aes requeridas

edes de Comunicao R

Barramentos

Arquitetura de Computadores

13

O que feito durante o ciclo de execuo (i)


Processador-memria Transferncia de dados entre a CPU e a memria principal Processador e E/S Transferncia de dados entre a CPU e um mdulo de E/S

edes de Comunicao R

Barramentos

Arquitetura de Computadores

14

O que feito durante o ciclo de execuo (ii)


Processamento de dados Realizao de uma operao lgica ou aritmtica sobre um dado Controle Alterao de uma seqncia de operaes: JUMP Combinao das anteriores

edes de Comunicao R

Barramentos

Arquitetura de Computadores

15

Um exemplo (i)
Imaginemos uma mquina hipottica onde cada palavra tem o comprimento de 16 bits

edes de Comunicao R

Barramentos

Arquitetura de Computadores

16

Um exemplo (ii)
Nossa mquina hipottica executa um trecho de programa que
edes de Comunicao R

Soma o contedo da palavra de memria de endereo 940 ao contedo da palavra de memria de endereo 941 Armazena o resultado da soma no endereo de memria 941

Barramentos

Arquitetura de Computadores

17

Um exemplo (iii)

edes de Comunicao R

Barramentos

Arquitetura de Computadores

18

O ciclo bsico de instruo(i)


Clculo de endereo de instruo
edes de Comunicao R

Determinao do endereo da prxima instruo. Geralmente obtido por incremento do endereo anterior

Busca da instruo
A partir do endereo da instruo, seu cdigo lido na memria e armazenado no IR do processador

Barramentos

Arquitetura de Computadores

19

O ciclo bsico de instruo(ii)


Decodificao da instruo
edes de Comunicao R

A partir do cdigo da instruo, determina-se o que deve ser realizado bem como o envolvimento de operando(s)

Clculo do endereo de operando


Se a instruo envolver operando(s), seja na memria, seja via E/S, seu endereo determinado

Busca de operando
O operando lido na memria ou E/S
Barramentos Arquitetura de Computadores

20

O ciclo bsico de instruo(iii)


Execuo da operao
edes de Comunicao R

A operao indicada pelo cdigo da instruo executada na unidade de execuo

Armazenamento do resultado
O resultado da operao escrito na memria ou E/S

Barramentos

Arquitetura de Computadores

21

Diagrama de estado do ciclo de execuo

edes de Comunicao R

Barramentos

Arquitetura de Computadores

22

Interrupo
Mecanismo pelo qual um mdulo pode interromper a seqncia normal de operaes Resultado da execuo do programa (por software) Diviso por zero, overflow,... Temporizao (relgio) Interrupo gerada por temporizador interno Mecanismo usado em ambientes multi-tarefas preemptivo Entrada e Sada E/S) Gerado por um mdulo ou dispositivo de E/S Falha de hardware Erro de paridade de memria
Barramentos Arquitetura de Computadores

edes de Comunicao R

23

Controle do fluxo de programa

edes de Comunicao R

Barramentos

Arquitetura de Computadores

24

O Ciclo de Interrupo (tratamento)


edes de Comunicao R

adicionado ao ciclo de instrues O processador verifica a ocorrncia de interrupo


Condio indicada por um sinal de interrupo

Caso no exista nenhuma interrupo pendente, a prxima instruo buscada

Barramentos

Arquitetura de Computadores

25

O Ciclo de Interrupo (tratamento)


Em caso de interrupo pendente
edes de Comunicao R
A execuo do programa corrente suspensa Salva-se o contexto (contedo dos registradores) O endereo da rotina de tratamento da interrupo identificada colocado no PC As instrues dessa rotina so executadas Finalizado o tratamento da interrupo, restaurase o contexto e continua-se a execuo do programa suspenso

O mecanismo de tratamento de interrupes geralmente parte do sistema operacional


Barramentos Arquitetura de Computadores

26

Ciclo de instruo com interrupo

edes de Comunicao R

Barramentos

Arquitetura de Computadores

27

Ciclo de instrues (com interrupes)

edes de Comunicao R

Barramentos

Arquitetura de Computadores

28

Mltiplas interrupes
Desabilitao de interrupes
edes de Comunicao R

O processador ignorar interrupes adicionais enquanto estiver executando o tratamento de uma outra A presena de interrupes pendentes verificada aps o trmino da execuo do tratamento da primeira As interrupes so tratadas na mesma seqncia em que ocorrem
Barramentos Arquitetura de Computadores

29

Mltiplas interrupes
Define prioridades
edes de Comunicao R

Interrupes de baixa prioridade podem ser interrompidas por aquelas de prioridade mais elevada Quando uma interrupo de prioridade mais alta termina de ser tratada, o processador retoma a interrupo anterior

Barramentos

Arquitetura de Computadores

30

Mltiplas interrupes seqenciais


edes de Comunicao R

Barramentos

Arquitetura de Computadores

31

Mltiplas interrupes aninhadas


edes de Comunicao R

Barramentos

Arquitetura de Computadores

32

Interconexes
Todas as unidades de um computador devem ser interconectadas Tipos diferentes de conexes para diferentes tipos de unidade so necessrios
Memria CPU Entrada e Sada
Barramentos Arquitetura de Computadores

edes de Comunicao R

33

Mdulos e suas conexes

edes de Comunicao R

Barramentos

Arquitetura de Computadores

34

A conexo da memria
Responsvel pelo recebimento e envio de dados Transporte de endereos de posies de memria Transporte de sinais de controle
WRITE READ Temporizao
Barramentos Arquitetura de Computadores

edes de Comunicao R

35

Conexo de Entrada e Sada (I)


Do ponto de vista do computador, semelhante conexo de memria Operaes de Sada
Recebe dados do computador Envia dados para o perifrico

edes de Comunicao R

Operaes de entrada
Recebe dados do perifrico Envia dados para o computador
Barramentos Arquitetura de Computadores

36

Conexo de Entrada e Sada (II)


edes de Comunicao R

Recebe os sinais de controle do computador Envia os sinais de controle para o perifrico


Realizar operao de leitura no disco

Recebe endereo do computador


Nmero de porta que identifica um perifrico

Envia um sinal de interrupo (sinal de controle)


Barramentos Arquitetura de Computadores

37

Conexo da CPU
L instrues e dados Escreve os dados de sada (resultantes do processamento) Envia sinais de controle para outras unidades Recebe (e trata) sinais de interrupo

edes de Comunicao R

Barramentos

Arquitetura de Computadores

38

Barramentos
Existem diferentes formas de realizar interconexes So mais comuns as interconexes por barramentos mltiplos (computadores pessoais) ou por barramento unificado (DEC PDP)
Barramentos mltiplos: dados, endereo e controle Barramento unificado: Unibus
Barramentos Arquitetura de Computadores

edes de Comunicao R

39

O que um barramento?
Um caminho ou via (eltrico) interligando dois ou mais dispositivos Usualmente funciona em modo broadcast Freqentemente agrupados
Um dado nmero de vias ou canais um barramento Um barramento de 32 bits formado por 32 vias

edes de Comunicao R

Linhas de alimentao (e referncia) geralmente no so mostradas


Barramentos Arquitetura de Computadores

40

Esquema de interconexo por barramentos

edes de Comunicao R

Barramentos

Arquitetura de Computadores

41

O barramento de dados
Transporta dados (contedo de memria)
Se operandos ou instrues no relevante
edes de Comunicao R

A largura do barramento fundamental para o desempenho Os barramentos so sincronizados por um sinal de relgio
A freqncia do sinal de relgio tem impacto sobre o desempenho
Barramentos Arquitetura de Computadores

42

O barramento de endereos
Identifica a origem ou o destino de dados
edes de Comunicao R

Para que a CPU possa ler uma determinada posio de memria, seu endereo colocado no barramento de endereos

A largura do barramento de endereos define a mxima capacidade de memria do sistema


O processador Intel 8080 tem um barramento de endereos de 16 bits, o que d um espao de endereamento de 64kB
Barramentos Arquitetura de Computadores

43

O barramento de controle
Informaes de controle e temporizao
edes de Comunicao R

Sinais de leitura e escrita em memria Solicitao de interrupo Sinais de relgio

Barramentos

Arquitetura de Computadores

44

Construo dos barramentos


Os barramentos so constitudos de linhas condutoras, cujos nveis de tenso so estabelecidos em relao ao ponto de referncia (terra) Fisicamente podem ser constitudos de
Linhas em um circuito impresso Fios em um cabo paralelo Conjuntos de fios

edes de Comunicao R

Eventualmente os barramentos podem possuir conectores


PCI
Barramentos Arquitetura de Computadores

45

Problemas de barramento nico


Vrios dispositivos usando um mesmo barramento causam problemas
edes de Comunicao R

Atrasos de propagao de sinais


Mais perceptveis em barramentos longos, causando impacto no sistema de coordenao e afetando a performance

A maioria dos sistemas emprega barramentos mltiplos


Barramento local, ...
Barramentos Arquitetura de Computadores

46

edes de Comunicao R

Barramentos

Arquitetura de Computadores

47

Barramento ISA com cache

edes de Comunicao R

Barramentos

Arquitetura de Computadores

48

Barramentos de alta performance


edes de Comunicao R

Barramentos

Arquitetura de Computadores

49

Tipos de barramentos
Dedicado
edes de Comunicao R
Linhas de endereos separadas das linhas de dados

Multiplexado
Linhas compartilhadas Linha de controle para endereo vlido ou dado vlido Possui menor nmero de vias A implementao difcil O controle complexo
Barramentos Arquitetura de Computadores

50

Arbitrao
Em um barramento compartilhado, mais de um mdulo pode controlar o barramento
edes de Comunicao R

Apenas um dispositivo transmite por vez

Deve existir um mecanismo que permite aos dispositivos usar o barramento sem conflitos (rbitro) A arbitrao pode ser
Centralizada (no processador, por exemplo) Distribuda (cada mdulo possui uma lgica de controle de acesso ao barramento)
Barramentos Arquitetura de Computadores

51

Arbitrao centralizada
Um nico mdulo controla o acesso ao barramento
edes de Comunicao R

Chamado de controlador de barramento rbitro

Pode ser incorporado ao processador ou separado


Na arquitetura Intel pode ser encontrado nos chamados chipsets
Barramentos Arquitetura de Computadores

52

Arbitrao distribuda
Cada mdulo conectado ao barramento pode solicitar o seu uso Existe um lgica de controle de acesso ao barramento em cada mdulo O mdulo (o processador ou uma unidade de E/S) que detm o controle do barramento age como mestre
O mestre pode iniciar uma transferncia de dados com outros dispositivos, que atuam como escravos
Barramentos Arquitetura de Computadores

edes de Comunicao R

53

Temporizao
Os eventos em um barramento ocorrem de maneira coordenada A coordenao feita a partir de um sinal de referncia (clock)
O barramento de controle inclui uma linha com o sinal de clock Todos os dispositivos podem ler a linha de relgio Geralmente os eventos ocorrem ou so iniciados na subida do pulso de clock comum que ocorra um evento por ciclo
Barramentos Arquitetura de Computadores

edes de Comunicao R

54

Tipos de transferncias de dados (i)


Transferncia de dados para escrita
Mestre para escravo
edes de Comunicao R

Transferncia de dados para leitura


Escravo para mestre

Barramento multiplexado (dados e endereos)


Inicialmente o barramento usado para endereo; em seguida ele serve para transferncia de dados
Barramentos Arquitetura de Computadores

55

Tipos de transferncias de dados (ii)


Barramentos dedicados
edes de Comunicao R
O endereo colocado no barramento de endereos, ficando l at que os dados estejam no barramento de dados Escrita: o mestre coloca os dados no barramento de dados assim que as linhas de endereo tenham se estabilizado e o escravo tenha reconhecido o endereo enviado Leitura: O escravo coloca os dados no barramento de dados assim que reconhea o endereo e busque os dados requeridos
Barramentos Arquitetura de Computadores

56

Diagrama de temporizao sncrono


edes de Comunicao R

Barramentos

Arquitetura de Computadores

57

Diagrama de temporizao assncrono

edes de Comunicao R

Barramentos

Arquitetura de Computadores

58

O barramento PCI
Peripheral Component Interconnect
edes de Comunicao R

Barramento de grande largura de banda, funcionando independente do tipo de processador Proposto pela Intel e tornado pblico 32 vias para dados, clock de 33 MHz (33,33 MHz): 133 MB/s Existe a verso avanada, operando a 66 MHz, com 64 vias para dados
528 MB/s, taxa bruta
Barramentos Arquitetura de Computadores

59

Caractersticas do PCI
Transferncia sncrona Arbitrao centralizada
edes de Comunicao R

Barramentos

Arquitetura de Computadores

60

Linhas do barramento PCI (obrigatrias)


Linhas do sistema
Incluem o clock e o reset (inicializao)
edes de Comunicao R

Endereos & dados


32, multiplexadas temporalmente para endereos e dados Linhas de interrupo e de validao

Interface de controle Arbitrao


No compartilhada

Linhas de sinalizao de erro


Barramentos Arquitetura de Computadores

61

Linhas do barramento PCI (opcionais)


Linhas de interrupo Suporte a cache Extenso de 64 bits do barramento
32 linhas adicionais Multiplexao temporal 2 linhas para habilitar dispositivos capazes de executarem transferncias a 64 bits

edes de Comunicao R

JTAG/Boundary Scan
Linhas usadas para procedimentos de teste
Barramentos Arquitetura de Computadores

62

Comandos PCI
A transao inicia-se entre o solicitante (mestre) e o dispositivo O dispositivo mestre solicita o barramento determinado o tipo de transao
Por exemplo, operao de E/S de leitura ou escrita

edes de Comunicao R

Fase de endereamento Segue-se uma ou mais fases de dados


Barramentos Arquitetura de Computadores

63

PCI: diagrama de tempo para leitura


edes de Comunicao R

Barramentos

Arquitetura de Computadores

64

PCI: arbitrao do barramento

edes de Comunicao R

Barramentos

Arquitetura de Computadores

65

Viso do barramento PCI (i)


Estrutura atual de um computador

edes de Comunicao R

Fonte: http://arstechnica.com/

Barramentos

Arquitetura de Computadores

66

Viso do barramento PCI (ii)


O barramento PCI usado no arranjo dos computadores atuais
Fonte: http://arstechnica.com/

edes de Comunicao R

Barramentos

Arquitetura de Computadores

67

Especificaes PCI
As caractersticas do barramento PCI so mantidas por um frum formado por diversos membros provenientes da indstria (AMD, Broadcom, Hewlett-Packard, IBM, Intel, LSI Logic, Microsoft, Phoenix Technologies e Texas Instruments)
http://www.pcisig.com

edes de Comunicao R

As especificaes PCI definem o ambiente de hardware incluindo o protocolo, as caractersticas eltricas, mecnicas e os aspectos relevantes para a interconexo de componentes e placas de expanso
Barramentos Arquitetura de Computadores

68

Verses
As especificaes PCI vem recebendo alteraes e revises desde o seu lanamento, no incio da dcada de 90
Existem vrias verses das especificaes Atualmente as especificaes so denominadas de convencional e avanada Convencional
PCI 1.x, PCI 2.x e PCI 3.x

edes de Comunicao R

Avanada
PCI-X, PCI-Express (PCIe)
Barramentos Arquitetura de Computadores

69

Caractersticas eltricas
Sinalizao
5V
edes de Comunicao R
Utilizada nas verses mais antigas

3,3V
Utilizada nas implementaes atuais

Barramentos

Arquitetura de Computadores

70

Caractersticas bsicas
Verso inicial
edes de Comunicao R

32 vias, clock de 33,33MHz, taxa de transferncia mxima terica de 132MB/s

Melhorias
32 vias, clock de 66MHz (264MB/s) 64 vias, clock de 66MHz (512MB/s)

Barramentos

Arquitetura de Computadores

71

O modelo carrega-e-armazena
Do ponto de vista da CPU, o PCI proporciona um acesso aos dispositivos alocando para ele um espao na memria como se fosse uma aplicao
Barramentos Arquitetura de Computadores

edes de Comunicao R

72

Barramento compartilhado
O PCI convencional utiliza um barramento compartilhado Necessidade de arbitrao Performance limitada: rudo e degradao limita a quantidade de componentes conectados ao barramento Barramentos

edes de Comunicao R

Arquitetura de Computadores

73

Ampliao: PCI bridges


O root controla as funes do barramento, inicializando e configurando todos os dispositivos na fase de boot Todos os dispositivos so escravos No h possibilidade de plug-and-play
Barramentos Arquitetura de Computadores

edes de Comunicao R

74

PCI-X
Tentativa de estender as caractersticas do PCI da maneira mais suave possvel
edes de Comunicao R

Implementa um aumento no clock 133MHz, empregando 64 vias, com uma taxa mxima terica de 1GB/s
Existe uma implementao que, usando a subida e a descida do sinal de clock de 133MHz, implementa um sinal efetivo de 266MHz

Apesar das melhorias introduzidas, os problemas persistem


Barramentos Arquitetura de Computadores

75

A arquitetura de barramento pontoa-ponto


Um dos pontos fracos do PCI convencional o barramento compartilhado
Uma estrutura onde a comunicao entre o dispositivo mestre e o escravo fosse feita diretamente, seria mais eficiente: o PCI Express
Barramentos Arquitetura de Computadores

edes de Comunicao R

76

PCI-Express (PCIe)
Em um barramento PCIe, a CPU fala com qualquer dispositivo apenas endereando-o
A estrutura de switch abre um canal exclusivo entre a CPU e o dispositivo (comunicao pontoa-ponto) possvel a implementao do conceito de qualidade de servio ou QoS pacotes podem ser priorizados, garantindo taxas sustentadas para aqueles dispositivos que delas precisarem O PCIe implementa a idia da comutao de pacotes
Barramentos Arquitetura de Computadores

edes de Comunicao R

77

PCIe compatvel com PCI convencional


O modelo PCI convencional segue o conceito do carregar e armazenar
edes de Comunicao R

Do ponto de vista funcional, o sistema funciona como uma rede: ele implementa as quatro primeiras camadas do modelo OSI A quarta camada justamente a que implementa a idia de carregar-e-armazenar no foi modificada
As aplicaes pensam que esto lidando com o mesmo ambiente PCI de sempre
Barramentos Arquitetura de Computadores

78

A comunicao entre dispositivos PCIe


Emprega uma abordagem serial para a comunicao feita atravs de links
Cada link composto por uma ou mais lanes (pistas) cada lane transporta um byte por vez em ambas as direes A comunicao full-duplex possvel pelo uso de dois sinais distintos: send e receive Um pacote a ser transmitido deve ser quebrado em bytes, transmitidos e remontados no destino
Barramentos Arquitetura de Computadores

edes de Comunicao R

79

PCIe x1, x2, , x32

edes de Comunicao R

Barramentos

Arquitetura de Computadores

80

Desempenho
Cada lane do PCIe capaz de uma taxa de transferncia de 2,5 Gbps em cada sentido
Um barramento com duas vias (lanes) 2 ter uma capacidade mxima terica de 5 Gbps

edes de Comunicao R

Barramentos

Arquitetura de Computadores

81

O PCIe em um sistema

edes de Comunicao R

Barramentos

Arquitetura de Computadores

82

Implementao

edes de Comunicao R

Barramentos

Arquitetura de Computadores

83

Você também pode gostar