Pages

quarta-feira, 11 de dezembro de 2013

Estrutura Interna de Memória

Ciclo de Instrução

Busca, decodificação e execução de instruções são tarefas básicas realizadas por um processador. Caracterizam um ciclo, pois as tarefas são executadas repetidamente, sempre e sempre, até que seja decodificada uma instrução que indique parada ao computador. 

O fluxograma do ciclo de instrução anteriormente mostrado ilustra o mesmo de forma 
simplificada. Um dos pontos omitidos é o incremento do PC, função indispensável ao funcionamento de qualquer sistema de computação. 

Outro ponto também apresentado de forma resumida são os acessos à memória. Tanto as 
instruções como os dados ficam armazenados na memória e portanto existem buscas de operandos na memória e cálculo do endereço da próxima instrução a ser executada. 


Memórias


Uma das partes mais importante do computador é a memória. O processador apenas recebe 
dados e os processa segundo alguma pré-programação, logo após devolvendo-os, não importando de onde vem e para onde vão. Os programas a serem executados e os dados a serem processados (inclusive os que já o foram) ficam na memória, visto que a área para armazenamento de dados do processador é pequena. Há basicamente dois tipos de memória: 


ROM (Read-Only Memory): Só permitem a leitura de dados e são lentas; em compensação não 
perdem seu conteúdo quando desligadas; 
RAM (Random Access Memory): São rápidas, permitem leitura e escrita, porém, seu conteúdo é perdido quando são desligadas. 
Dentro da ROM existem basicamente 3 programas: BIOS, POST e SETUP. É comum acontecer confusão em relação aos nomes, sendo usado atualmente o termo BIOS como algo genérico. Para acessar o programa de configuração, basta acessar um conjunto de teclas durante o POST (geralmente na contagem da memória). Na maioria das máquinas, basta apertar a tecla “DEL” ou “Delete”, porém, esse procedimento pode variar de acordo com o fabricante. 
Quando o computador é ligado, o POST (Power On Self Test) entra em ação, identificando a 
configuração instalada, inicializando os circuitos da placa-mãe (chipset) e vídeo, e executando teste da 
memória e teclado. Após, ele carrega o S.O. de algum disco para a memória RAM, entregando o controle 
da máquina para o S.O. 
Na RAM, ficam armazenados o S.O., programas e dados que estejam em processamento. O 
processador acessa a RAM praticamente o tempo todo. Atualmente a memória RAM, formada por circuitos de memória dinâmica (DRAM - Dynamic RAM), é mais lenta que o processador, ocasionando wait states, até que a memória possa entregar ou receber dados, diminuindo assim o desempenho do micro. Memórias mais rápidas amenizam este problema, assim como a utilização de cache de memória. 
A cache é uma memória estática (SRAM - Static RAM) de alto desempenho, utilizada para 
intermediar a comunicação com o processador. Na maioria das vezes o processador não acessa o conteúdo da RAM, mas sim uma cópia que fica na cache. A cache é utilizada desde o 386DX, e a partir dos 486, todos os processadores passaram a conter uma quantidade de memória estática, conhecida como L1 ou interna. A cache fora do processador é conhecida como L2 ou externa. Hoje, existem processadores com mais níveis de cache. Uma ressalva é que os processadores a partir do Pentium II possuem a L2 dentro da caixa que envolve o processador, não fazendo mais sentido as denominações interna e externa. 
A DRAM é formada por capacitores, que são fácies de construir, baratos e pode-se aglomerar muitas células de memória em pequeno espaço físico. O problema é que após algum tempo, eles descarregam, dessa forma deverá haver um período de recarga, chamado refresh. Durante este período, a memória geralmente não pode ser acessada, limitando assim com uma imposição física sua velocidade. 
Por outro lado, a SRAM é formada por caros circuitos digitais chamados flip-flops, que armazenam dados sem a necessidade de ciclos para refresh. Um flip-flop, por ser um circuito completo, é maior que um capacitor, conseqüentemente, onde cabem muitos capacitores têm-se somente alguns flip-flops. Devido ao preço, tamanho e consumo, não é possível que um micro tenha toda sua RAM de memória estática, então a partir dos 386, utiliza-se um modelo híbrido com SRAM como cache e DRAM como RAM propriamente dita. 

Organização Hierárquica da Memória

A memória deve ser antes de tudo organizada, para que o processador possa saber onde buscar um dado e onde colocar outro já processado. Para isso, ela é organizada em pequenas áreas, chamadas “endereços”. Da mesma forma que um grande armário, repleto de gave tas, sendo cada uma delas diferenciada através de um número, onde dentro de cada gaveta podemos colocar uma informação. Cada gaveta assemelha-se a um endereço de memória. Por motivos históricos e de retrocompatibilidade a unidade de referência à memória continua sendo o byte, mesmo com os processadores atuais acessando a 
memória a 32 ou 64 bits por vez.  
Caso a RAM se esgote, o processador transfere o conteúdo atual da RAM para um arquivo em disco, chamado arquivo de troca (swapping), liberando espaço na RAM. O conteúdo deste arquivo é colocado de volta na RAM quando algum dado nele contido for solicitado sendo o processo conhecido como memória virtual. Quanto maior a quantidade de memória RAM, menor a probabilidade de arquivos de trocas, aumentando assim o desempenho do micro uma vez que o acesso ao arquivo de troca (H.D.) é bem mais lento que a memória RAM.  
Dividindo as memórias em uma hierarquia, o objetivo que se deseja alcançar é um sistema de memória com desempenho próximo ao da memória mais rápida e custo por bit próximo ao da memória mais barata. 

A memória secundária é geralmente memória em disco magnético, a memória cache é 
tradicionalmente uma memória estática (SRAM) enquanto a principal, ou simplesmente RAM, é uma memória dinâmica (DRAM).  
Ao executar uma instrução, a CPU não manipula dados da memória, nem mesmo da cache. Ao invés disso, ela processa os dados já carregados em registradores; desta forma, alguns autores colocam os registradores como integrantes da hierarquia de memória. A Figura 13 ilustra uma hierarquia de memória incluindo os registradores e colocando informações em relação a capacidade , custo e tempo de acesso. 


A representação em forma de pirâmide facilita a compreensão pois no topo estão os 
registradores, de acesso quase imediato com capacidade reduzida, enquanto na base encontra-se a memória secundária, disponível em grandes quantidades porém de acesso mais lento. 




Nenhum comentário:

Postar um comentário

 

Blogger news

Blogroll

About