quarta-feira, 11 de junho de 2014

Subsistema de memória




 Subsistema de memória
Sistema de memória e suas características
De acordo com o modelo de Von Neumann (Aula 1), a função da Unidade Central de Processamento (UCP) ou processador é, essencialmente, capturar dados e instruções que compõem um programa e processá-los, não impor­tando sua origem ou destino. Mas para que o processador possa executar os programas, seus dados e instruções devem estar armazenados na memória.
Portanto, a memória dos computadores é um elemento indispensável e tão importante quanto a Unidade Central de Processamento (CPU) ou proces­sador. A memória é um dispositivo que permite ao computador armazenar dados de forma temporária ou permanente. Segundo Tanenbaum (2007), a memória é a parte do computador onde os programas e os dados são ar­mazenados. Sem uma memória na qual os processadores (CPU) possam ler ou escrever informações, o conceito de computador digital com programa armazenado não pode ser implementado.
Para o funcionamento adequado de um computador, é necessário dispor, nele mesmo, de diferentes tipos de memória. Em algumas tarefas, pode ser fundamental que a transferência de dados seja feita da forma mais rápida possível – é o caso das tarefas realizadas pela CPU, onde a velocidade é fator preponderante, ao passo que a quantidade de bits a ser manipulada é muito pequena. Esse tipo de memória deve possuir características diferentes da­quele em que a capacidade de armazenamento é mais importante que a sua velocidade de transferência de e para outros dispositivos. Destacamos que a necessidade da existência de vários tipos de memória ocorre em virtude de vários fatores concorrentes, mas principalmente em função do aumento da velocidade das CPUs (a qual é muito maior do que o tempo de acesso da memória) e da capacidade de armazenamento.
Se existisse apenas um tipo de memória, sua velocidade deveria ser compa­tível com a da CPU, de modo que esta não ficasse esperando muito tempo por um dado que estivesse sendo transferido. Segundo Patterson e Han­nessy (2000), a CPU manipula um dado em 5 ns, ao passo que a memória transfere um dado em 60 ns.
Considerando os diversos tipos de memórias existentes, as quais variam em função de sua tecnologia de fabricação, capacidade de armazenamento, velocidade e custo, pode-se dizer que fica muito difícil projetar um computa­dor utilizando-se apenas um único tipo de memória. Dessa forma, segundo Monteiro (2007), o computador possui muitas memórias, as quais se encon­tram interligadas de forma bem estruturada, constituindo o que é chamado de subsistema de memória, o qual é parte do sistema computacional.
O subsistema de memória é projetado de modo que seus componentes se­jam organizados hierarquicamente. A Figura 4.1 apresenta uma pirâmide contendo a hierarquia das memórias existentes em um computador. Obser­va-se que a base da pirâmide é larga, simbolizando a elevada capacidade de armazenamento, o tempo de uso, a velocidade e o custo de sua tecnologia de fabricação. Assim, a base da pirâmide representa dispositivos de armaze­namento de massa (memória secundária), de baixo custo por byte armaze­nado, mas ao mesmo tempo com baixa velocidade de acesso. A flecha na direção do topo indica que quanto mais rápidas forem as memórias, mais elevado será o seu custo em relação à tecnologia e menor a sua capacidade de armazenamento em um computador
Registradores
A função da memória é a de armazenar dados destinados a serem, em al­gum momento, utilizados pelo processador (MONTEIRO, 2007). O processa­dor busca dados e instruções de onde estiverem armazenadas e os deposita temporariamente em seu interior para que possa realizar as operações solici­tadas utilizando seus demais componentes (seria análogo à função memória de uma calculadora). Os dispositivos denominados registradores são os lo­cais onde esse conteúdo fica armazenado.
Assim, o conceito de registrador surgiu da necessidade do processador de armazenar temporariamente dados intermediários durante um processa­mento. Por exemplo, quando um dado resultado de operação precisa ser armazenado até que o resultado de uma busca da memória esteja disponível para com ele realizar uma nova operação.
Os registradores são dispositivos de armazenamento temporário (volátil), lo­calizados no interior do processador (CPU). Por causa da tecnologia utilizada, os registradores são um tipo de memória extremamente rápida e bastan­te cara. Por esse motivo, sua disponibilidade em um computador é muito Memórias voláteisMemórias voláteis: são as que requerem energia para manter a informação armazenada, ao contrário das memórias permanentes. Placa-mãe Placa-mãe: trata-se de uma placa de circuito impresso, que serve como base para a instalação dos demais componentes de um computador, como o processador, a memória RAM, os circuitos de apoio, as placas controladoras, os slots, entre outros.
limitada. Cada registrador possui capacidade para manter apenas um dado (uma palavra).
Em resumo, os registradores, conforme mostra a Figura 4.1, ficam no topo da pirâmide, o que representa que sua velocidade de transferência de dados dentro do processador é bastante elevada; em consequência disso, sua ca­pacidade e armazenamento é baixa e seu custo é alto.
4.3 Memória cache
Considerando a premissa de que o processador precisa buscar dados e ins­truções em uma memória externa – denominada memória principal, a qual será apresentada na seção a seguir – para processá-los e, considerando que a tecnologia desenvolvida para os processadores fez com que se esses dis­positivos sejam bem mais rápidos que a memória principal, surgiu a neces­sidade de diminuir esse atraso gerado pela transferência de dados entre a memória e o processador.
Na busca de soluções para a limitação imposta pela comunicação entre processador e memória, foi desenvolvida uma técnica que consiste na in­clusão de um dispositivo de memória entre a memória principal e o proces­sador. Esse dispositivo é denominado memória cache. Sua função principal é acelerar a velocidade de transferência das informações entre processador e memória principal e, com isso, aumentar o desempenho dos sistemas de computação. As memórias cache são voláteis, assim como os registrado­res, pois dependem de energia para manter o seu conteúdo armazenado. A Figura 4.2 apresenta um diagrama de blocos de um processador Pen­tium original, a distribuição da memória cache e sua relação com a memória principal (MONTEIRO, 2007).
Assim, a memória cache é um tipo de memória construída com tecnologias semelhantes às do processador, isso eleva os custos de produção. Para ame­nizar o fator custo e dispor das vantagens de um sistema computacional com desempenho mais rápido, foram incorporadas ao computador peque­nas porções de memória cache, localizadas internamente ao processador e entre ele e a memória principal, as quais funcionam como um espelho de parte da memória principal.
Nesse caso, quando o processador solicita um determinado dado e o encon­tra na cache, não há necessidade de requisitá-lo à memória principal, redu­zindo significativamente o tempo de processamento. Ou seja, quanto mais memória cache um processador possuir, melhor será o seu desempenho.
A tecnologia de fabricação da memória cache é SRAM (Static Random Ac­cess Memory), a qual é bastante diferente das memórias DRAM (Dynamic Random Access Memory) – tecnologia da memória principal. A diferença é que nas memórias SRAM não há necessidade de refresh ou realimentação constante para que os dados armazenados não sejam perdidos. Isso é pos­sível porque as memórias SRAM se utilizam de seis transistores (ou quatro transistores e dois resistores) para formar uma célula de memória. Assim, o refresh passa a não ser necessário, o que faz com que esse tipo de memória seja mais rápida e consuma menos energia.
De acordo com Alecrim (2010), os processadores trabalham, basicamente, com dois tipos de cache: cache L1 (Level 1 ou Nível 1) e cache L2 (Level 2 ou Nível 2). Normalmente a cache L2 é um pouco maior que a L1 e foi implan­tada quando a cache L1 se mostrou insuficiente.
Nas gerações anteriores, a cache L1 ficava localizada no interior do proces­sador e a cache L2 era externa a ele. Nas gerações de computadores atuais, ambos os tipos ficam localizados dentro do chip do processador, sendo que, em muitos casos, a cache L1 é dividida em duas partes: “L1 para dados” e “L1 para instruções”. Alecrim (2010) destaca, ainda, que dependendo da arquitetura do processador, é possível o surgimento de modelos que tenham um terceiro nível de cache (L3).
4.4 Memória principal
É um tipo de memória indispensável para o funcionamento do computador, à qual o processador pode fazer acesso direto. Além de alocar os dados e

instruções de programas a serem manipulados pelo processador, esse tipo de memória dá acesso às memórias secundárias, de forma a disponibilizar dados ao processador.
A memória principal é denominada memória RAM (Random Access Me­mory), corresponde a um tipo de memória volátil, ou seja, seu conteúdo fica armazenado enquanto o computador estiver ligado (energizado); ao desligar a corrente elétrica, o conteúdo da memória RAM é apagado. Esse é o motivo pelo qual muitas pessoas perdem arquivos que estão utilizando quando ocorrem fatos como, por exemplo, alguém esbarrar no cabo ligado à tomada de energia elétrica ou mesmo cessar o fornecimento de energia. Isso acontece porque ao ocorrerem tais fatos, o arquivo ainda não havia sido salvo em algum tipo de memória permanente (ex.: o disco do computador). A Figura 4.3 apresenta um pente (módulo) de memória RAM típico. Assim, a memória cache é um tipo de memória construída com tecnologias semelhantes às do processador, isso eleva os custos de produção. Para ame­nizar o fator custo e dispor das vantagens de um sistema computacional com desempenho mais rápido, foram incorporadas ao computador peque­nas porções de memória cache, localizadas internamente ao processador e entre ele e a memória principal, as quais funcionam como um espelho de parte da memória principal.
Nesse caso, quando o processador solicita um determinado dado e o encon­tra na cache, não há necessidade de requisitá-lo à memória principal, redu­zindo significativamente o tempo de processamento. Ou seja, quanto mais memória cache um processador possuir, melhor será o seu desempenho.
A tecnologia de fabricação da memória cache é SRAM (Static Random Ac­cess Memory), a qual é bastante diferente das memórias DRAM (Dynamic Random Access Memory) – tecnologia da memória principal. A diferença é que nas memórias SRAM não há necessidade de refresh ou realimentação constante para que os dados armazenados não sejam perdidos. Isso é pos­sível porque as memórias SRAM se utilizam de seis transistores (ou quatro transistores e dois resistores) para formar uma célula de memória. Assim, o refresh passa a não ser necessário, o que faz com que esse tipo de memória seja mais rápida e consuma menos energia.
De acordo com Alecrim (2010), os processadores trabalham, basicamente, com dois tipos de cache: cache L1 (Level 1 ou Nível 1) e cache L2 (Level 2 ou Nível 2). Normalmente a cache L2 é um pouco maior que a L1 e foi implan­tada quando a cache L1 se mostrou insuficiente.
Nas gerações anteriores, a cache L1 ficava localizada no interior do proces­sador e a cache L2 era externa a ele. Nas gerações de computadores atuais, ambos os tipos ficam localizados dentro do chip do processador, sendo que, em muitos casos, a cache L1 é dividida em duas partes: “L1 para dados” e “L1 para instruções”. Alecrim (2010) destaca, ainda, que dependendo da arquitetura do processador, é possível o surgimento de modelos que tenham um terceiro nível de cache (L3).
4.4 Memória principal
É um tipo de memória indispensável para o funcionamento do computador, à qual o processador pode fazer acesso direto. Além de alocar os dados e

instruções de programas a serem manipulados pelo processador, esse tipo de memória dá acesso às memórias secundárias, de forma a disponibilizar dados ao processador.
A memória principal é denominada memória RAM (Random Access Me­mory), corresponde a um tipo de memória volátil, ou seja, seu conteúdo fica armazenado enquanto o computador estiver ligado (energizado); ao desligar a corrente elétrica, o conteúdo da memória RAM é apagado. Esse é o motivo pelo qual muitas pessoas perdem arquivos que estão utilizando quando ocorrem fatos como, por exemplo, alguém esbarrar no cabo ligado à tomada de energia elétrica ou mesmo cessar o fornecimento de energia. Isso acontece porque ao ocorrerem tais fatos, o arquivo ainda não havia sido salvo em algum tipo de memória permanente (ex.: o disco do computador). A Figura 4.3 apresenta um pente (módulo) de memória RAM típico.

A memória RAM é denominada genericamente de DRAM (Dynamic RAM), ou RAM dinâmica, pelo fato de possuir uma característica chamada refres­camento de memória, que tem a finalidade de manter os dados armazena­dos enquanto o computador estiver ligado. Essa denominação está ligada à tecnologia utilizada na fabricação desse tipo de memória, a qual se baseia na utilização de dispositivos semicondutores, mais especificamente capacitores associados a transistores para representar bits de dados armazenados. Pode­mos dizer que são necessários um transistor e um capacitor para representar uma célula de memória.
Organização e Arquitetura de Computadores e-Tec Brasil 50
Pelo fato de precisarem ser “refrescadas” ou realimentadas constantemente, as memórias DRAM consomem muitos ciclos do processador para a realimen­tação, além de consumirem mais energia que outros tipos de memória Por isso, são mais lentas e possuem custo muito menor e capacidade de armazenamen­to de dados consideravelmente maior que as memórias estáticas (ex.: cache).
Atualmente, podemos contar com muitas opções de padrões de memória RAM, devido à busca constante por uma memória de maior capacidade, maior velo­cidade de acesso, menor consumo de energia e de tempo de realimentação.
Apresentamos alguns padrões de memória RAM disponíveis mais utilizados atualmente:a) DDR (Double Data Rate): duplicam o desempenho da memória, possi­bilitando a transferência de dois lotes de dados – entre processador e memória – por ciclo de clock.DDR-2: possibilitam a transferência de qua­tro lotes de dados por ciclo de clock e apresentam menor consumo de energia que a DDR original.b) DDR-3: transferem oito lotes de dados por ciclo de clock e consomem ainda menos energia que sua versão anterior.
A memória RAM é comercializada para uso nos computadores no formato de pentes ou módulos de memória, contendo uma determinada quantida­de desses recursos. Os pentes de memória podem variar de acordo com as características apresentadas pela memória, especialmente ligadas ao de­sempenho ou velocidade de transferência. Sendo assim, existem diferentes modelos de módulos de memória disponíveis no mercado. Dentre os que são utilizados atualmente, podem-se citar:a) Módulos SIMM (Single In Line Memory Module): apresentam um peque­no orifício nas linhas de contato. Foram utilizados em memórias FPM e EDO RAM. Não se encontram disponíveis no mercado atualmente; b) Módulos DIMM (Double In Line Memory Module): não apresentam orifí­cios nas linhas de contato e apresentam contatos em ambos os lados do módulo. São utilizados atualmente em memórias DDR, DDR2 e DDR3. A Figura.

Organização da memória principal
Como a memória principal é o local onde os dados e as instruções de um programa ficam armazenados para serem utilizados pelo processador duran­te a sua execução, é preciso ficar claro que esse conteúdo precisa estar orga­nizado em uma estrutura padrão que permita a identificação do local onde estão armazenados cada um dos seus itens (ex.: uma instrução ou um dado).
Assim, a memória principal encontra-se organizada em um conjunto de célu­las, sendo que cada uma delas representa o agrupamento de uma quantida­de de bits. Cada célula caracteriza uma unidade de armazenamento na me­mória e possui um endereço único, o qual é utilizado pelo processador para acessar seu conteúdo. Portanto, a célula é a menor unidade endereçável em um computador. Monteiro (2007) complementa essa explicação afirmando que cada célula é constituída de um conjunto de circuitos eletrônicos, base­ados em semicondutores, que permitem o armazenamento de valores 0 ou 1, os quais representam um dado ou uma instrução.
A quantidade de bits que pode ser armazenada em uma célula é definida pelo fabricante. Uma célula contendo N bits permite o armazenamento de 2N combinações de valores, o que representará a quantidade de células pos­síveis na memória. Um tamanho comum de célula adotado pelos fabricantes é 8 bits (1 byte).
Se for possível armazenar em uma memória de 2N combinações possíveis de cé­lulas (cada uma delas contendo dados armazenados), então será possível calcu­lar a capacidade de armazenamento da memória principal, da seguinte forma: a) se N = 9 bits, tem-se que 29 = 512 (células de memória);b) se cada célula pode armazenar 8 bits, tem-se que: 512 x 8 = 4KB (4 quilo byte) de espaço em memória.
Organização e Arquitetura de Computadores e-Tec Brasil 52
O acesso a cada posição (célula) de memória pode ser feito de modo alea­tório, proporcionando grande flexibilidade, graças à sua tecnologia de fabri­cação. São duas as operações que podem ser realizadas em uma memória: escrita (write) – para o armazenamento de dados na memória – e leitura (read) – para a recuperação de dados e instruções armazenados na memória.
Pesquisem em sites da internet por especificações de computadores que contenham cada um dos tipos de memória apresentados acima. Se possível, copie a figura que representa o equipamento e, logo em seguida, apresente suas características (nome, modelo, ano de fabricação, tipo de memória que possui e quantidade). Esse conteúdo deve ser postado em um blog a ser criado no AVEA.
O termo palavra também é utilizado ao se tratar de memória de um com­putador, mas não deve ser confundido com célula, pois palavra é utilizada para definir a unidade de transferência e processamento e o número de bits que podem ser transferidos entre a memória principal e a CPU para processamento. Acerca desse tema, Monteiro (2007) afirma que a memória principal deve ser organizada em um conjunto sequencial de palavras, cada uma diretamente acessível pelo processador.
4.4.2 Memória ROM
A memória ROM (Read Only Memory) também é considerada uma memória principal, mas apresenta algumas diferenças em relação à memória RAM. A primeira delas é o fato de ser uma memória somente de leitura, ou seja, seu conteúdo é escrito uma vez e não é mais alterado, apenas consultado. Outra característica das memórias ROM é que elas são do tipo não voláteis, isto é, os dados gravados não são perdidos na ausência de energia elétrica ao dispositivo.
É dito que um software que é armazenado em uma memória ROM passa a ser chamado de firmware. Em um computador existem diversos software desse tipo disponíveis em memórias ROM, pois não podem ser apagados ao desligar o computador e devem ficar disponíveis sempre que for necessário.
Dessa forma, as memórias ROM são aplicadas em um computador para ar­mazenar três programas principais (TORRES, 2010): a) BIOS (Basic Input Output System): ou Sistema Básico de Entrada e Saída, é responsável por ensinar o processador da máquina a operar com os dispositivos básicos de entrada e saída;
e-Tec Brasil Aula 4 – Subsistema de memória 53 b) POST (Power On Self Test): Autoteste – programa de verificação e teste que se executa após a ligação do computador, realizando diversas ações sobre o hardware (ex.: contagem de memória);c) SETUP: Programa que altera os parâmetros armazenados na memória de configuração (CMOS).
De acordo com Alecrim (2010), as memórias ROM podem ser classificadas em:a) PROM (Programmable Read-Only Memory): este é um dos primeiros tipos de memória ROM. A gravação de dados neste tipo é realizada por meio de aparelhos que trabalham através de uma reação física com elementos elétricos. Uma vez que isso ocorre, os dados gravados na memória PROM não podem ser apagados ou alterados;b) EPROM (Erasable Programmable Read-Only Memory): as memórias EPROM têm como principal característica a capacidade de permitir que dados sejam regravados no dispositivo. Isso é feito com o auxílio de um componente que emite luz ultravioleta. Nesse processo, os dados grava­dos precisam ser apagados por completo. Somente após esse procedi­mento uma nova gravação pode ser realizada;c) EEPROM (Electrically-Erasable Programmable Read-Only Memory): este tipo de memória ROM também permite a regravação de dados; no en­tanto, ao contrário do que acontece com as memórias EPROM, os pro­cessos para apagar e gravar dados são feitos eletricamente, fazendo com que não seja necessário mover o dispositivo de seu lugar para um apare­lho especial para que a regravação ocorra;d) EAROM (Electrically-Alterable Programmable Read-Only Memory): as me­mórias EAROM podem ser vistas como um tipo de EEPROM. Sua principal característica é o fato de que os dados gravados podem ser alterados aos poucos, razão pela qual esse tipo é geralmente utilizado em aplicações que exigem apenas reescrita parcial de informações;e) Flash: as memórias Flash também podem ser vistas como um tipo de EE­PROM; no entanto, o processo de gravação (e regravação) é muito mais rápi­do. Além disso, memórias Flash são mais duráveis e podem guardar um vo­lume elevado de dados. Trata-se do tipo de memória utilizada em pen-drive;f) CD-ROM, DVD-ROM e afins: essa é uma categoria de discos ópticos onde os dados são gravados apenas uma vez, seja de fábrica, como os CDs de músicas, ou com dados próprios do usuário, quando este efetua a gravação.
4.5 Memória secundária
A memória secundária também é denominada de memória de massa, por possuir uma capacidade de armazenamento muito superior à das outras memórias conforme discutido neste tópico. Outra característica que difere a memória secundária das outras memórias é o fato de ser permanente (não volátil), ou seja, não perde o conteúdo armazenado caso o computador seja desligado. Por estar na base da pirâmide (Figura 4.1), apresenta o menor custo por byte armazenado.
Este tipo de memória não possui acesso direto pelo processador, sempre havendo a necessidade de carregamento de dados dos dispositivos de me­mória secundária para a memória principal, para que então sejam enviados ao processador.
Monte um arquivo com imagens de memórias secundárias, seguidas da des­crição de características de cada uma delas (marca, modelo, capacidade de armazenamento, valor aproximado, aspectos de velocidade (ex.: rpm, taxa de transferência). Esse arquivo deverá ser postado como atividade no AVEA.
De acordo com Monteiro (2007), a memória secundária pode ser constituída por diferentes tipos dispositivos, alguns diretamente ligados ao sistema para acesso imediato (ex.: discos rígidos) e outros que podem ser conectados quando desejado (ex.: pen-drive, CD/DVD).
Em relação à tecnologia de fabricação, existe uma variedade muito grande de tipos, assim como a variedade de dispositivos que se enquadra nessa ca­tegoria de memória. Para cada dispositivo, existem diferentes tecnologias de fabricação, não sendo possível abordar todas nessa seção.

Nenhum comentário:

Postar um comentário