2. Sumário
CPU
Definições
Constituição interna
Ligações ao exterior: dados, endereços, controlo
Barramentos
Definições
Tipos de barramentos
Arbitragem do barramento
Interrupções
Mapeamento de I/O / Descodificação de endereços
2
3. CPU
CPU – Central Processing Unit
É o órgão responsável pela actividade de um computador
Executa instruções que estão armazenadas na memória. À
leitura de uma instrução dá-se a designação de fetch
O CPU inclui
ALU – Arithmetic Logic Unit
Unidade de controlo
Registos
Linhas de comunicação internas – barramentos internos
3
4. Barramentos
Um barramento (Bus) é um conjunto de linhas partilhado por vários dispositivos
Cada barramento obedece a um conjunto de regras (Bus Protocol) e é
caracterizado por um conjunto de especificações eléctricas e mecânicas
Num computador existem vários tipos de barramentos
Barramento local
Barramento de sistema
Barramento interno ao processador
Caminhos que permitem o transporte de dados entre os vários elementos:
CPU, memória, placas de expansão, sistema de entrada e saída, etc...
4
5. Barramentos
Grupo de linhas paralelas. Cada linha trafega 1 bit de cada vez
Barramento de 8 linhas 1 byte
Barramento de 32 linhas 4 bytes
Exemplos de padrões de barramento de expansão:
ISA (Industry Standard Architecture),
MCA (Microchannel Architecture),
EISA (Extended Industry Standard Architecture),
VLB (Vesa Local Bus),
Serão exemplo os mais modernos
PCI (Peripheral Component Interconnect),
AGP (Accelerated Graphics Port),
USB (Universal Serial Bus)
5
6. Barramentos
Padrão PCI
Os dados são transmitidos em 64 bits
Desenvolvido inicialmente pela Intel
Desenvolvido para o Pentium e para o Pentium Pro
Mais barato e versátil que o VLB
Alto desempenho
6
7. Barramentos
Padrão AGP
Desenvolvido para as placas de vídeo mais modernas (3D) e
processadores Pentium II
2 vezes mais rápido que o PCI
Permite a placa de vídeo aceder directamente a memória para
armazenar texturas sem que os dados passem pelo processador
7
8. Barramentos
Padrão USB
Novo padrão para a conexão de periféricos externos
Facilidade de uso
Possibilidade de conectar vários periféricos a uma única porta USB
Considerado 1º barramento para Computadores realmente Plug-and-
Play
8
9. Barramentos
Exemplo de barramentos num computador
Internos Local Sistema
9
10. Barramentos
Noção de Master e Slave de um barramento
Master – dispositivo que requisita o barramento tomando a iniciativa
numa transferência de dados
Slave – dispositivo que serve o pedido
A maioria dos dispositivos pode tanto ser master como ser slave,
excepto a memória que é sempre slave
Exemplos:
O CPU o pede ao controlador de disco para ler um bloco em disco
O controlador de disco pede à memória para aceitar os dados que
foram lidos do disco
10
11. Barramentos
Ligação de vários dispositivos periféricos
Vários dispositivos periféricos podem partilhar o mesmo barramento
Tal facto é possível devido a
Utilização de buffers tri-state
Existência de arbitragem no barramento
11
12. Arbitragem do barramento
A arbitragem do barramento existe para impedir a dois dispositivos diferentes
sejam master simultaneamente.
Existem dois tipos de arbitragem
Centralizada – existe um dispositivo – árbitro – ao qual estão ligados
todos os periféricos
Descentralizada – cada periférico verifica primeiro se já existe um
outro periférico que seja master do barramento
12
13. Interrupções
Designa-se por interrupção um evento que faça com o CPU interrompa
(temporariamente) a normal execução de um programa
Exemplos:
Pedido de um periférico que não pode esperar
Existência de um erro num programa
Quando ocorre uma interrupção, o CPU terá que salvaguardar o conteúdo
de todos os seus registos
A interrupção é servida através da execução de um conjunto de instruções
pré-definidas
13
14. Interrupções
Existem vários tipos de interrupções
Hardware
Pedidos de dispositivos periféricos, relógio do sistema, circuitos de
monitorização de energia
Software
Uma interrupção causada por um programa (e.g., envio de dados
para o écran)
Excepção
Ocorrem devido a utilizações indevidas de instruções ou de dados
(e.g., divisão por 0, acesso a uma posição de memória protegida,
etc.)
14
15. Interrupções
Interrupt requests (IRQ)
Canais para requisição de interrupções – um canal por periférico
Interrupt controller (PIC)
Um controlador de interrupções é responsável pelo encaminhamento
das interrupções dos periféricos para o processador
Estabelece um protocolo com o processador, trocando dados
necessários para servir a interrupção
15
16. Descodificação de Endereços
Os periféricos podem ser mapeados para posições de memória (memory-
mapped I/O)
Desta maneira poupam-se linhas de barramento dedicadas para cada
periférico
As transferências de dados podem ser vistas como operações de leitura /
escrita em memória
Põe-se então um problema: como activar os chips correspondentes ao
controlo destes periféricos ?
Utiliza-se descodificação de endereços
Desta maneira a cada periférico fica associado um conjunto de
endereços 16
17. Clock interno
Coração do computador Emite pulsos eléctricos que se
propagam pelo barramento
Movido por um cristal de quartzo localizado na placa mãe
As moléculas deste cristal vibram milhões / biliões de vezes por
segundo, em velocidade constante
As vibrações são usadas para cronometrar operações de
processamento e ditar a velocidade de transferência de dados
Expresso em termos de frequência – Hertz (Hz)
1 Hz = 1 ciclo por segundo (1 operação realizada a cada ciclo)
Exemplo: Computador de 1 GHz emite 1 bilhão de pulsos eléctricos
por segundo – 1 bilhão de realizadas por segundo
O processador não possui gerador de clock. Opera multiplicando o
sinal recebido da placa mãe 17
18. Clock interno
Tecnologia relacionada ao número de instruções de processamento
que podem ser reconhecidas
CISC (Complex Instruction Set Computing)
Conjunto Complexo de Instruções
Reconhece mais de uma centena de instruções
É mais lento na execução das instruções (quanto > número de
instruções > tempo)
A maioria dos microprocessadores são CISC
18
19. Clock interno
RISC (Reduced Instruction Set Computing)
Conjunto Reduzido de Instruções
RISC
Reconhece um número limitado de instruções que, em
contrapartida, são optimizadas para que sejam executadas com
mais rapidez
Redução do conjunto de instruções ao mínimo: as instruções
não contempladas são executadas como combinações das
existentes
Desempenho de 50-75% superior a um CISC 19