Você está na página 1de 39

Arquitetura de Computadores

Prof. Armando Mendes Neto


Aula Passada
• Estrutura - Sistemas de Computação
• CPU, Memória principal, Dispositivos de entrada/saída e Barramento.
• Processador
• ULA, Registradores e Unidade de Controle.
• Clock: sincronizar e coordenar.
• Interno e Externo.
• Frequência: Hertz.
• Memória
• Armazenamento (Temporário ou Definitivo).
• Principal/Primária e Massa/Secundária.
• Barramentos (Interconexão).
• Dados, Endereço e Controle.
Relembrando...
Pesquisa
• Arquitetura de Von Neumann

• Armazenar os programas
no mesmo espaço de
memória que os dados.
Pesquisa
• Arquitetura de Harvard

• Separação, na qual estão as instruções de programa e das memórias de dados.


• Permite que o processador leia uma instrução ao mesmo tempo que faz um acesso à memória
de dados.
Conteúdo da Aula
• Introdução a Hierarquia de Memória.
• Tipos de Memória:
• Registradores.
• Memória Cache.
• Memória Principal (RAM e ROM).
• Memória Secundária.
Introdução
• A hierarquia de memória, refere-se a divisão pela qual mostramos os
diferentes tipos de memórias, segmentadas por algumas características,
como:
• Capacidade de armazenamento.
• Velocidade/Tempo de acesso.
• Custo.
• A medida que descemos na hierarquia, observamos que:
• O custo por bit, diminui.
• A capacidade de armazenamento, aumenta.
• O tempo de acesso, aumenta.
• A frequência de acesso à memória pelo processador, diminui.
Introdução
Introdução
Representação da Memória
• A unidade básica de memória é o digito binário, denominado bit
(binary dit), podendo conter 0 ou 1.
• Com o agrupamento de bits, podemos representar mais símbolos e
valores.
8 bits = 1 byte  Pode armazenar 1 caracter

256
combinações
Representação da Memória
• Vários padrões de codificação de caracteres utilizando bits foram
criados. O que foi adotado pela maioria dos fabricantes foi o ASCII –
American Standard Code for Information Interchange.
• Os primeiros processadores trabalhavam somente com um caractere
por vez e eram chamados de processadores de 8 bits.
• A palavra, é a quantidade de bits que uma CPU processa de uma vez.
Quanto mais palavras a CPU consegue processar, maior sua
velocidade. Op1
Op2
Os dois, processam a
CPU – 64 bits Op CPU – 16 bits Op3
mesma quantidade de
Op4
dados
Representação da Memória
• O sistema de medida adotado para memória é o sistema binário, com
base 2. Para aproximarmos ao sistema decimal, elevamos o n°2 as
seguintes potências:
Tipos de Memória
• Registradores.

• Memória Cache.

• Memória Principal (RAM e ROM).

• Memória Secundária.
Registradores
• Dispositivos de memória, presentes no interior da CPU, com a função
de armazenamento de dados que posteriormente serão processados
na CPU.
• Um registrador é um local interno à CPU, onde os dados que foram
buscados na memória são armazenados.
• É um circuito lógico que tem a finalidade de reter a curto prazo um
conjunto de bits.
Registradores
• Um registrador memoriza um número limitado de bits, geralmente
uma palavra de memória. Os registros mais importantes são:

• Contador de programa (PC - Program Counter), que aponta para


a próxima instrução a executar.

• Registrador de instrução (IR - Instruction Register) que


armazena a instrução em execução.
Comunicação entre memórias
• Geralmente, a memória principal nos sistemas é considerada rápida,
porém em pequena quantidade; já a memória secundária é barata e
existe em grande quantidade, sendo lenta em comparação as demais.
• Deve-se analisar as necessidades de tipo de memória do sistema, para
que este não seja desnecessariamente caro ou insuportavelmente lento.
• Na prática, as memórias são organizadas de modo que as mais rápidas
(e consequentemente, mais caras e de menor capacidade de
armazenamento) sejam localizadas mais próximas do processador.
Comunicação entre memórias
Comunicação entre memórias
• São armazenados nas memórias de alta velocidade os dados e
instruções que o processador utilizará com mais frequência. Em
memórias mais lentas, com grande capacidade de armazenamento
podem ser usadas para guardar dados e instruções que não serão
necessários naquele momento.
• As memórias são organizadas hierarquicamente de forma a obtermos
um sistema com desempenho (velocidade) próximo ao da memória
mas rápida e custo por bit próximo ao da memória de menor custo.
Níveis
• Memória em 2 níveis:

Menor custo por bit


Maior capacidade
• Memória em 3 níveis: Menor tempo de acesso
Interação entre CPU e Memória
• A memória principal e a CPU, são interligadas por três barramentos
distintos:
Interação entre CPU e Memória
• No caso de programas que utilizem uma capacidade de memória maior
do que a memória principal, é utilizada a memória virtual.
Memória Principal
• Von Neumann: mencionava uma área de memória na qual estariam
todos os dados que seriam lidos e escritos pelo programa em execução.
Memória Principal
• Memória Principal é a parte do computador, onde programas e dados
são armazenados temporariamente para processamento.
• A informação permanece na memória principal, apenas enquanto for
necessária.
• A área ocupada pela informação pode ser liberada para ser
posteriormente sobrescrita por outra informação.
• Quem controla a utilização da memória principal é o Sistema
Operacional.
Memória Principal
• A memória principal é dividida em células, todas formadas pela
mesma quantidade de bits.
Memória Principal
• Célula, é a menor unidade da memória que pode ser endereçada.
• Cada célula é composta de um determinado número de bits.
• Cada célula é identificada por um endereço único, pela qual é
referenciada pelo sistema e pelos programas.
• As células são numeradas sequencialmente, uma a uma, de 0 a (N-1),
chamado o endereço da célula.
Memória Principal

Endereço
• É o localizador da célula,
que permite identificar
univocamente uma
célula.
• Assim, cada célula pode
ser identificada pelo seu
endereço.
Memória RAM
• A memória RAM (Random Access Memory), é utilizada para a CPU
efetuar acessos de leitura e escrita ao dispositivo na qual esteja
implementada.
• As memórias do tipo RAM, são utilizadas fundamentalmente para o
armazenamento de instruções e dados de um programa em execução.
• O acesso aleatório, se refere ao fato dos dados da memória poderem
ser acessadas diretamente, utilizando uma lógica de endereçamento
implementada em hardware.
Memória RAM
• Já no acesso sequencial, o tempo de acesso é proporcional à localidade
na qual a informação se encontra.
• Exemplo: se você está na primeira posição de memória de uma fita
magnética, para acessar o dado que está na última posição, deve-se
passar toda a fita até alcançar o final da mesma. Se em seguida
quisermos acessar a segunda posição de memória, a fita deve ser
rebobinada quase até o começo.
• Na média, o tempo de acesso sequencial é sempre pior do que o
aleatório
Memória RAM
Tipos de Memória RAM
• Dependendo dos materiais utilizados na fabricação da memória,
existem dois tipos de RAM:
• Estática (SRAM – Static RAM)
• Dinâmica (DRAM – Dynamic RAM).
• SRAM e DRAM se diferem quanto à capacidade de
armazenamento e ao tempo de acesso.
• Uma DRAM é constituída por células que armazenam dados com a
carga de capacitores, onde a presença ou ausência de carga em um
capacitor representa um dígito binário 1 ou 0.
DRAM x SRAM
• A DRAM, requer uma regeneração periódica de carga (refresh) para
manter os dados nela armazenados, pois um capacitor tem a tendência
natural de se descarregar com o tempo.
• Na memória SRAM, os dígitos binários são armazenados utilizando
configurações flip-flop (também chamado de latch) com portas
lógicas, mantendo estes dados enquanto houver fornecimento de
energia;
DRAM x SRAM
Memória Cache
• A memória cache, é uma pequena porção de memória inserida entre a
UCP e a memória principal.
• Armazena uma cópia dos dados e/ou instruções armazenadas na
memória.
• A cache é organizada na forma de uma coleção de blocos ou linhas.
• Guarda somente os itens que serão referenciados com frequência em
determinado momento
Memória Cache
Memória Cache
• A capacidade de armazenamento costuma ser na ordem de Kilobytes
ou Megabytes (poucos), devido ao custo elevado.
• Seu tempo de acesso é muito baixo, possibilitando que a CPU acesse
os dados armazenados em apenas um ciclo de clock.
• Fundamentais para o bom desempenho, devido ao crescente
distanciamento de velocidade entre processador/memória.
Memória Cache
• Neste modelo de organização, o processador direciona os acessos para
a memória cache. Se o dado referenciado encontra-se na cache, o
acesso é completado em apenas um ciclo de clock.
• Caso o dado referenciado encontre-se na cache, dizemos que ocorreu
um cache hit, caso contrário, ocorre um cache miss.
• Quando ocorre um cache miss, um bloco contendo o dado
referenciado, mais os dados armazenados em sua vizinhança, é copiado
da memória principal para a memória cache.
Memória Virtual
• A memória virtual foi criada para permitir a execução de programas,
que necessitem de mais memória do que a quantidade instalada no
sistema.
• Funcionamento básico: o Sistema Operacional mantém as partes do
programa e dados atualmente usados na memória e salva o restante em
disco, até que seja necessário.

• Operação de swap
.
Memória Virtual
• O controle deste armazenamento/busca é feito pela UGM (Unidade de
Gerenciamento de Memória).
• A UGM converte os endereços lógicos aos quais o programa refere-se
em endereços físicos, que identificam os locais reais da memória.

RAM
Exercício
• Explique as características dos diferentes tipos de memórias existentes
utilizadas para a classificação em um modelo hierárquico.
• Quais os tipos existentes de memórias ROM? Quais as diferenças entre
elas?
• Explique o propósito de um sistema que utiliza memória virtual, e
exemplifique seu princípio básico de funcionamento.