1
CPU e Barramentoso Clock interno
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
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
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...
5
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)
Barramentos
6
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
Barramentos
7
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
Barramentos
8
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
Barramentos
9
Exemplo de barramentos num computador
Internos Local Sistema
Barramentos
10
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
Barramentos
11
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
Barramentos
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
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
14
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.)
Interrupções
15
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 encaminhamentodas interrupções dos periféricos para o processador
Estabelece um protocolo com o processador, trocando dadosnecessários para servir a interrupção
Interrupções
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
17
Coração do computador Emite pulsos eléctricos que sepropagam 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éctricospor segundo – 1 bilhão de realizadas por segundo
O processador não possui gerador de clock. Opera multiplicando osinal recebido da placa mãe
Clock interno
18
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
Clock interno
19
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 commais rapidez
Redução do conjunto de instruções ao mínimo: as instruçõesnão contempladas são executadas como combinações dasexistentes
Desempenho de 50-75% superior a um CISC
Clock interno