Académique Documents
Professionnel Documents
Culture Documents
Setembro 2009
Arquitetura de um computador
Sumrio
Introduo
O
que um computador? Um computador um dispositivo capaz de fazer clculos e tomar decises lgicas em velocidades bilhes de vezes mais rpidas que os seres humanos;
Introduo
Tanto
a estrutura quanto as funes de um computador so, na sua essncia, muito simples e podem ser representadas por:
Processamento de dados, Armazenamento de dados, Transferncia de dados, Controle dessas operaes;
Introduo
CPU (central processing unit) controla a operao do computador e desempenha funes de processamento de dados, 2. A memria principal- armazena dados,
Introduo
3. O subsistema de entrada e Sada de dados E/S: transfere dados entre o computador e o ambiente externo e 4. Sistema de Interconexo:Mecanismos que estabelecem a comunicao entre a CPU, a memria principal e os dispositivos de E/s;
Registradores
Barramento do Sistema
CPU
Unidade de
Controle
Introduo
Registradores:
fornecem o armazenamento interno de dados para a CPU,
Interconexo da CPU:
mecanismo que possibilita a comunicaoentre a unidade de controle, a ULA e os registradores;
Arquitetura de um computador
A
Arquitetura de um Computador : Define o comportamento de um computador atravs de seu conjunto de instrues; definida pelo conjunto de atributos visveis ao programador atravs de seu conjunto de instrues,
Arquitetura de um computador
Intuitivamente,
Exemplos: conjunto de instrues, nmero de bits utilizados para representar os tipos de dados, mecanismos de E/S, tcnicas para endereamento de memria;
Arquitetura de um computador
Exemplo 1: se o conjunto de instrues disponveis a um usurio permite manipular 10 registradores e existem 50 registradores a arquitetura desse computador apresenta somente 10 registradores pois somente isso que o usurio enxerga; Exemplo 2: possvel que um computador tenha um ship para executar uma multiplicao porem, se no existir uma instruo para o programador utilizar esse ship,ele no faz parte da arquitetura desse computador;
Organizao de um computador
A
Organizao de um computador apresenta como uma arquitetura implementada; que dispositivos existem e como eles esto interconectados, contemplando detalhes de hardware, transparentes a um usurio;
Apresenta
Organizao de um computador
Definir
se um computador deve ter uma instruo de multiplicao uma deciso do projeto da Arquitetura, Definir se vai ser implementada por uma unidade de multiplicaoou por repetidas unidades de soma uma deciso da Organizao;
Organizao de Computadores
Exemplo
de uma organizao de um computador simples com uma CPU , memria e dois dispositivos :
CPU
Unidade de Controle
ULA
Via
CPU
Todos
os computadores tm uma CPU e uma memria; CPU Central Processing Unit tem a funo de executar programas armazenados na memria,
buscando as instrues, examinando-as e executando as;
CPU
Todas
coisa; O que diferencia uma da outra que utilizam tcnicas diferentes para obter um processamento mais rpido;
CPU
Principais componentes de uma CPU so: Unidade Lgica Aritmtica (ULA) Efetuas as operaes lgicas e aritmticas, Conjunto de Registradores Alguns para armazenamento temporrio e outros para funes de controle; O registrador mais importante o Contador de Instrues ( ou PC Program Counter) que aponta sempre para a prxima instruo a ser executada; A Unidade de Controle UC responsvel pela busca de instrues na memria e determinao de seus tipos,
CPU
A CPU contem uma memria pequena de alta velocidade utilizada para armazenar resultados intermedirios e algumas informaes de controle;
Esta memria formada por alguns registrados e o mais importante o contador de programa,que aponta para a prxima instruo a ser executada;
O Registrador de Instrues tambm importante e aponta para a instruo sendo
Formatos de Instrues
Cdigo da operao especifica uma ao em particular,
Uma CPU executa cada instruo em uma srie de pequenos passos: 1. Busca a prxima instruo da memria para o registrador de instruo, 2. Atualiza o contador de programa para que ele aponte para a instruo seguinte, 3. Determina o tipo de instruo, 4. Se a instruo usa dados na memria,determina onde eles esto, 5. Busca os dados para os registradores internos da CPU, 6. Executa a instruo, 7. Armazena os resultados em locais apropriados, 8. Volta ao passo 1 para executar a prxima instruo;
mquina convencional
Processador
PC
Busca
RI
Decodifica e executa
Execuo de Instrues
possvel escrever um programa que simula a funo de uma CPU originalmente idealizado em hardware.
Um programa que busca, examina e executa as instrues de um outro programa denominado interpretador. Na prtica, por razes econmicas entre outras, os programas escritos na linguagem de mquina convencional so geralmente executados por um interpretador rodando numa mquina mais primitiva cujo nvel denominado nvel de microprogramao.
A B
Registradores
ULA
A+B
Unidade de Controle
A Unidade de Controle a parte do computador que interpreta as instrues, de mquina convencional, isto ,
busca, decodifica e executa cada instruo,
A Unidade de Controle interpreta as instrues de mquina convencional controlando o fluxo de dados, isto ,sempre manipulando os dados e seu fluxo;
Todo computador possui um conjunto de instrues que sua CPU capaz de executar, Essas instrues so representadas por sequncias de bits, normalmente limitadas pelo nmero de bits do registrador principal da CPU, O conjunto dessas instrues constitui-se no Cdigo de Mquina, que uma sequncia de nmeros que significam uma sequncia de instrues a serem executadas;
Programar diretamente em cdigo de mquina costuma ser exaustivamente difcil, e por esse motivo, foi criada uma linguagem de programao chamada linguagem de montagem Assembly Language, Compiladores: so programas que, a partir de um programa (o cdigo fonte) cria um outro programa, o cdigo objeto que o cdigo de mquina,m auqele que a CPU entende, Um Interpretador um programa que a partir de um cdigo fonte gera uma instruo em cdigo executvel e a executa antes de interpretara prxima;
Assembler
MOV INC MOV JNZ r1, x r1 x, r1 m
MOV
DEC MOV m . .
r2, a
r2 a, r2
.Montador ( assembler )
Compilador
x:x+1; If x < 0 then a:=a-1;
.
.
Compilador
r1, x r1
INC
0001 00001110 00010011 0001 1111 1111 0001 0001 0001 0010 1111 1111 1110 0011 1100 1111 1111 0010 0001 0001 0001 0010 0001 0000 0001 0010 1100 1111 1111 0010
0001 0000 0001 0010
MOV JNZ
MOV DEC MOV
x, m r1
r2, a r2 a, r2
Interpretadores
Memria x:x+1; Busca a prxima instruo de alto nvel, caracter a caracter. If x < 0 then a:=a-1; . Texto do programa escrito em linguagem de alto nvel Interpretador Busca prxima instruo
Decodifica instruo
110001001001001 . . 110010100100101 110000101001010 PC 001101000100101 Processador Busca, decodifica e executa as instrues do interpretador Executa instruo
Sistema Operacional
Um
Sistema Operacional um conjunto de ferramentas e programas que fazem o papel de intermedirio entre o os sistemas aplicativos e a o hardware de uma mquina, Este conjunto constitudo por um ncleo ( kernel), e um conjunto de softwares bsicos bsicos que executam operaes simples, um gerenciador dos recursos que compem um computador;
Memrias
Uma
clula a menor unidade enderevel, A unidade bsica de memria um digito chamado bit, que apresenta o valor 0 ou 1,
Um
Embora
as memrias sejam endereadas por bytes,elas so organizadas em grupos de bytes, denominados palavras;
Memrias
Organizao de memria
um acesso imediato e ininterrupto memria, Um dos maiores gargalos num computador o acesso memria, No adianta ter um processador rpido se a memria lenta, As memrias que operam na velocidade comparvel ao do processador tm custo elevado,
Memrias
CPU
Memria Cache
Memria Principal
Memria Secundari a
Sistemas de E/S
Parte da definio da Arquitetura de um computador a especificao de seu sistema de E/S, Engloba os mecanismos responsveis pela entrada e sada dos dados. Ex entrada: teclado,monitor, etc, Varia de computador para computador, Esquemas bsicos so:
E/S programada, E/S por interrupo, E/S por DMA, E/S atravs de canais;
Sistemas de E/S
E/S programada
Um caracter transferido entre um registrador da CPU e o dispositivo de E/S, selecionados pela instruo, O programa executa uma instruo para cada transferncia e deve testar o status do dispositivo para verificar se ele est pronto para receber ou j recebeu o dado; Esse tempo denominado loop de espera e tem a desvantagem que a CPU gasta a maior parte do tempo esperando o dispositivo estar pronto;
Sistemas de E/S
E/S por interrupo Quando o dispositivo estiver pronto para receber um dado ou tem um dado para enviar ele envia um sinal ao processador que interrompe a execuo do programa, A interrupo para o programa em execuo e transfere o controle para a rotina associada quela interrupo, Ao terminar o tratamento da interrupo o controle retornado ao programa que foi interrompido;
Sistemas de E/S
E/S por DMA Consiste em transferir um bloco de caracteres diretamente entre a Memria e o Dispositivo, Reduz o nmero de instrues, e libera a CPU da carga de atender uma interrupo a cada caracter. A CPU interrompida somente no fim da transferncia do bloco, A transferncia feita por um circuito especial;
Sistemas de E/S
E/S
atravs de Canais
Utilizada
em Mainframes, uma vez que o volume de entrada e sada muito grande e o uso do DMA atravs de uma via iria satur-la, canais so processadores especiais,
Os
Bibliografia
Stallings,W.;
Arquitetura e Organizao de Computadores, 5o Edio, Prentice Hall. Tanenbaum, A. Organizao Estruturada de Computadores,Segunda Edio. Notas de aula do curso de Arquitetura e Redes de Computadores, site http://poliparatodos.poli.usp.br . Autoria: Prof. Stephan Kovach.