Upload
fernando-nascimento
View
45
Download
0
Embed Size (px)
Citation preview
Arquitetura de Computadores e Revisão de Hardware
Susanny MirelliMarço/2013
Estrutura Computacional
Um SO está intimamente ligado ao hardware do Computador
Compuatdores pessoais modernos hierarquias de barramentos, apresentando estrutura mais complexa
Estrutura Computacional
• Unidade de processamento central (CPU): controla as operações do computador e realiza as funções de processamento das informações. Geralmente identificado como o processador.
• Memória principal: armazena as informações
• I/O: realiza a transferência de informações entre o interior e o exterior
• Interconexões: mecanismos de troca de informações entre a CPU a memória principal e o I/O
Processadores
• Ciclo básico de execução: • buscar a primeira instrução da memória• Decodificá-la para determinar seus operandos e qual
operação a executar• Executar
• Buscar sucessivamente novas instruções, decodificá-la, executá-la, até que o programa pare.
• Componentes:• Unidades de Controle: responsável pelo controle da CPU• Unidade aritmética e lógica (ALU): realiza as operações de
processamento• Registradores: possibilita a armazenagem interna na CPU• Interconexões: realiza a comunicação entre as unidades da
CPU
CPU - Execução das InstruçõesU
CPULA
UC
Entrada Saída
MP
Memória Auxiliar
Comece a receber entrada a partir do Drive de CD-Rom
Se X maior que Y, vá para o passo 46 do programa
Multiplique A por B e armazene o resultado em C
InstruçãoInstruçãoLocal de ExecuçãoLocal de Execução
Unidade de Controle
ULA
ULA
CPU - Execução das Instruções
• Instrução – comando que define integralmente uma operação a ser executada
• Programa – instruções ordenadas logicamente
• Programa – série de instruções que o computador deve executar
CPU - Registradores
• Dispositivos utilizados como endereços para os operadores presentes em cada operação
• Ex.:– 1. Transferir o conteúdo do registrador n°3 para o
registrador n°2– Adicionar o conteúdo do registrador n°4 ao conteúdo do
registrador n°1, armazenando o resultado no registrador n°1
– Subtrair o conteúdo do registrador n°1 do conteúdo do registrador n°6, armazenando o resultado no registrador n°6
R0 R1 R2 R3 R4 R5 R61 4 3 5 2 8 7
R0 R1 R2 R3 R4 R5 R61 6 5 5 2 8 1
Registradores Especiais
A maioria dos computadores tem registradores especiais visíveis aos programadores:
• Contador de Programa• Ponteiro de Pilha: aponta para o topo da pilha
atual (a pilha contém variáveis locais, parâmetros de entrada e variáveis temporárias)
• PSW (program status word): palavra de estado do programa
• O SO deve estar ciente de todos os registradores: interrupção
Execução das Instruções
Pode haver saltos de execução
Operações sobre alguns dados podem exigir acessos a mais de um componente
Necessidade de armazenar temporariamente dados e instruções
Memória Principal
Execução das Instruções
CPU troca dados com a MemóriaRegistradores internos: MAR e MBR
Registrador de endereço de E/S: I/O AR e I/O BR
Módulo de memória consiste em um conjunto de locais, definidos por endereços numerados sequencialmente
Execução das Instruções
Processamento de instrução – duas etapas:Processador lê (busca) instrução da memória
Executa instrução
O processamento exigido para uma única instrução é chamado de ciclo de instrução
Início Buscar próxima instrução
Executar instrução
Final
Execução das Instruções
Busca e Execução de InstruçõesPC: Contador de programa, mantém o
endereço da instrução a ser buscada
O processador sempre incrementa o PC, de modo que buscará a próxima instrução em seqüência
O processador interpreta a instrução e realiza a ação solicitada
Execução das Instruções
Categorias das ações realizadas pelo processador:Processador-memória
Processador-E/S
Processamento de dados
Controle
A execução de uma instrução pode envolver uma combinação dessas ações
O Sistema de Computação4 primeiros dígitos = 1 hexaIndicam que o AC deve ser incrementado
O conteúdo do AC é armazenado no local 941
Busca próxima instrução, na seqüência
Execução das Instruções
Pode haver mais de uma referência á memória ou envolver e/s
Diagrama de estado mais elaborado, onde alguns estados podem ser nulo ou ser visitado várias vezes
Execução das Instruções
Os estados podem ser:Cálculo de endereço de instrução
Busca da instrução
Decodificação da operação da instrução
Cálculo do endereço do operando
Busca do operando
Operação dos dados
Armazenamento do operando
Execução das Instruções
Busca da Instrução
Busca da Operando
Armazenamento do Operando
Cálculo doEndereço da
instrução Decodificaçãoda operação da
instrução
Cálculo do endereço do
operando
Operação dos dados
Cálculo doendereço do operando
Instrução Completa, busca próxima instrução
Retorna para dados de string ou vetor
Múltiplosoperandos
Execução das Instruções
InterrupçõesMelhorar a eficiência do processador
Diferenças de desempenho entre processador e periféricos de E/S
Desperdício de uso do processador?
Com as interrupções o processador pode estar engajado na execução de outras instruções
Execução das InstruçõesInterrupções
O programa usuário não precisa conter código especial
Ciclo de interrupção é adicionado ao ciclo de instrução:
Início Buscar próxima instrução
Executar instrução
Final
Verificar interrupção:Processar
interrupção
Ciclo de execução Ciclo de interrupção
Ciclo de busca
Execução das Instruções
O processador e o SO são responsáveis por suspender o programa do usuário e depois retomá-lo
Classes de InterrupçãoPrograma
Timer
E/S
Falha de Hardware
Execução das InstruçõesTransferência de controle via interrupções
1
2
i
i + 1
M
Interrupção Ocorre aqui
.
.
.
.
.
.
.
.
.
Tratador de Interrupção
Execução das Instruções
Ciclo de InterrupçãoO processador verifica se houve alguma
interrupção: sinal de interrupçãoSe tiver interrupção pendente:
Suspende a execução do programa e salva contexto
Armazena no contador do programa o endereço inicial de uma rotina de tratamento de interrupção
O Sistema de ComputaçãoInterrupções Múltiplas
----------
Programa do Usuário
-----
-----
-----
Rotina de interrupção de
impressora
Rotina de interrupção de comunicação
Rotina de interrupção de
disco
t=0
t=40
t=10
t=15
t=25
t=25
t=35
Prioridades: impressora – 2Disco – 4Linhas de comunicação - 5
CPU – Microprocessador
• Miniaturização da CPU fez surgir os PC’s
• Há microprocessadores responsáveis por atividades locais– Co-processadores: complexos cálculos
numéricos ou apresentação de imagens de alta resolução
• Co-processador aritmético• Co-processador gráfico
Memória
Uma memória devia ser bastante rápida, para que a CPU não fosse atrasada, além de muito grande e barata
Não há atualmente - solução: hierarquia de Memória
Hierarquia:
Interna: registradores, níveis de cache, MP
Externa: disco rígido fixo, mídia removível
Ao descer:
custo/bit menor
Capacidade maior
Tempo de acesso mais lento
Memória
Enquanto se desce na hierarquia:Diminuição do custo por bit
Aumento da capacidade
Aumento do tempo de acesso
Diminuição na freqüência de acesso
Validade da última condição: Princípio da Localidade de ReferênciaReferências repetidas a um pequeno conjunto de
instruções
Memória Cache
Pequena porção de memória
Em geral está entre a MP e a CPU
Localizada no chip de CPU ou em um módulo
A cache contém uma cópia de partes da MP
A memória cache tem tamanho limitado devido seu custo
Algumas máquinas tem dou ou até três níveis de cache, cada um mais lento e de maior capacidade que o anterior
Memória Cache
Operações:CPU requer conteúdo de memória
Checa-se se o conteúdo está na cache
Se sim ocorre leitura do dado
Se não, requisita-se o bloco de dados na MP para a cache
Então da cache é enviado o dado para a CPU
Memória Cache
CPUMemória
Cache Memória Principal
Rápida Lenta
CPUCache de nivel 2 Memória Principal
Menos Rápida Lenta
Cache de nível 1
Mais Rápida
Chips multinúcleo Intel Chips multinúcleoAMD
Memória
Memória Principal ou RAM: volátilROM: não volátil, programada na fábrica e pode
ser alterada. – Rápida e barata. – Utilizadas para armazenar dados de inicialização– Armazenar programas para controle de dispositivos
de e/s em placas de E/S
EEPROM: ROM eletricamente apagávelFlash ROM: podem ser apagadas e reescritasMemórias de tecnologia CMOS: volátil. Para
armazenar data e hora
Discos
• Dispositivo mecânico• Mais lento
Discos
• Um ou mais pratos metálicos que rodam 5400, 7200 ou 10800 rpm
• A informação é escrita no disco em uma série de discos concêntricos
• Trilha, cilindro, setores (512bytes)
Fitas
• Fita magnética• Em geral utilizada para backup• É percorrida sequencialmente até chegar
ao bloco requisitado• Custo muito baixo
Dispositivos de Entrada e Saída• Em geral são constituídos por duas parte:– Controlador: chip que controla fisicamente o
dispositivo– Próprio dispositivo
• Driver de dispositivos: programa para gerenciar o controlador de dispositivo
• Cada fabricante de controlador deve fornecer um driver específico para cada SO a que dá suporte
Barramento ou Bus
• Via de tráfego interna, através da qual os sinais transitam entre os diversos componentes do computador
• 3 Tipos:– De dados– De endereços– De expansão
Barramento ou Bus
Barramento ou Bus