Memórias
Em informática, memória são todos os dispositivos que permitem a um computador guardar dados, temporariamente ou permanentemente.
Tipologia
Podemos distinguir os vários tipos de memórias:
§ Memória principal: também chamadas de memória real, são memórias que o processador pode endereçar diretamente, sem as quais o computador não pode funcionar. Estas fornecem geralmente uma ponte para as secundárias, mas a sua função principal é a de conter a informação necessária para o processador num determinado momento; esta informação pode ser, por exemplo, os programas em execução. Nesta categoria insere-se a memória RAM (volátil), memória ROM (não volátil), registradores e memórias cache.
§ Memória secundária: memórias que não podem ser endereçadas diretamente, a informação precisa ser carregada em memória principal antes de poder ser tratada pelo processador. Não são estritamente necessárias para a operação do computador. São geralmente não-voláteis, permitindo guardar os dados permanentemente. Incluem-se, nesta categoria, os discos rígidos, CDs, DVDs e disquetes.
Às vezes faz-se uma diferença entre memória secundária e memória terciária. A memória secundária não necessita de operações de montagem (inserção de uma mídia ou média em um dispositivo de leitura/gravação) para acessar os dados, como discos rígidos; a memória terciária depende das operações de montagem, como discos ópticose fitas magnéticas, entre outros.
Tecnologias de implementação
As principais tecnologias de implantação de memórias em uso corrente são:
§ Portas lógicas e flip-flops, usados na implementação da memória cache.
§ Transistores e circuitos de refrescamento, usados na implementação da memória principal.
§ Arranjos de conexões, utilizados na implementação de certas ROMs (memórias de leitura).
§ Fitas magnéticas, utilizadas principalmente para cópias de segurança e arquivamento a longo prazo.
§ Discos magnéticos, como discos rígidos e disquetes - a principal tecnologia de implementação de memória secundária.
§ Discos ópticos, como CDs e DVDs, e suas diversas variações.
§ Memória flash, um tipo de memória semicondutora não volátil muito usada em câmeras digitais e leitores de MP3.
Existem também tecnologias que foram usadas no passado, mas tornaram-se obsoletas:
§ Memórias de tecnologia delay line, uma das primeiras tecnologias de memória principal, que armazenavam os dados na forma de pulsos sonoros em uma coluna de mercúrio.
§ Memórias CRT, também chamadas de Williams-tube, um tipo de memória que usava um tubo CRT para armazenar dados na forma de pontos luminosos.
§ Memórias de núcleo de ferrite, uma tecnologia popular de implementação da memória principal nas décadas de 1940 e 1950.
§ Memórias de filme fino, uma melhoria da tecnlogia de núcleo de ferrite, utilizada em alguns computadores na década de 1960.
§ Cartões e fitas perfuradas, que já foram os principais meios de memória não-volátil.
Memórias voláteis
Memórias voláteis são as que requerem energia para manter a informação armazenada. São fabricadas com base em duas tecnologias: dinâmica e estática.
Memória SRAM de 64MB
Memória dinâmica
A memória dinâmica é a mais barata delas e, portanto, a mais utilizada nos computadores e são aquelas que foram popularizadas como memóriasRAM. Este atributo vem do nome inglês Randomic Acess Memory (memória de acesso aleatório), que significa que os dados nela armazenados podem ser acessados a partir de qualquer endereço. As memórias RAM se contrapõem com as de acesso seqüencial, que exigem que qualquer acesso seja feito a iniciar pelo primeiro endereço e, seqüencialmente, vai “pulando” de um em um até atingir o objetivo. Na realidade, existem outras memórias de acesso aleatório nos computadores, inclusive não voláteis, portanto, é importante ter o conhecimento de que o nome RAM é apenas uma popularização do nome da memória principal dos computadores, utilizada para armazenar os programas e dados no momento da execução.
O nome dinâmica é referente à tecnologia utilizada para armazenar programas e dados e não à forma de acessá-los. De modo simplista ela funciona como uma bateria que deve ser recarregada sempre que apresentar carga insuficiente para alimentar o equipamento.
Todas as vezes que a CPU (unidade de processamento central) for acessar a memória, para escrita ou para leitura, cada célula dessa memória é atualizada. Se ela tem 1 lógico armazenado, sua “bateria” será recarregada; se ela tem 0 lógico, a “bateria” será descarregada. Este procedimento é chamado de refresco de memória, em inglês, refresh.
Memória estática
A memória estática não necessita ser analisada ou recarregada a cada momento. Fabricada com circuitos eletrônicos conhecidos como latch, guardam a informação por todo o tempo em que estiver a receber alimentação.
Memória PROM
Memórias não voláteis
São aquelas que guardam todas as informações mesmo quando não estiverem a receber alimentação. Como exemplos, citam-se as memórias conhecidas por ROM, FeRAM e FLASH, bem como os dispositivos de armazenamento em massa, disco rígido, CDs e disquetes. As memórias somente para leitura, do tipo ROM (sigla de Read Only Memory), permitem o acesso aleatório e são conhecidas pelo fato de o usuário não poder alterar o seu conteúdo. Para gravar uma memória deste tipo são necessários equipamentos específicos. Dentre as memórias do tipo ROM destacam-se as seguintes:
Sigla | Nome | Tecnologia |
ROM | Read Only Memory (memória somente de leitura) | Gravada na fábrica uma única vez |
PROM | Programable Read Only Memory(memória programável somente de leitura) | Gravada pelo usuário uma única vez |
EPROM | Erasable Programable Read Only Memory (memória programável e apagável somente de leitura) | Pode ser gravada ou regravada por meio de um equipamento que fornece as voltagens adequadas em cada pino. Para apagar os dados nela contidos, basta iluminar o chip com raiosultravioleta. Isto pode ser feito através de uma pequena janela de cristal presente no circuito integrado. |
EEPROM | Electrically Erasable Programable Read Only Memory (memória programável e apagável eletronicamente somente de leitura) | Pode ser gravada, apagada ou regravada utilizando um equipamento que fornece as voltagens adequadas em cada pino. |
A Flash é anterior a FeRAM, mas é uma variação do tipo Eprom. Tornaram-se muito populares por dois motivos: a utilização de dispositivos de armazenamento removíveis como os chamados pen drives, a aplicação em equipamentos de som que reproduzem música no formato MP3 e os cartões de memória das câmeras digitais. Os dados armazenados neste tipo de memória permanecem ali sem a necessidade de alimentação. Sua gravação é feita em geral através da porta USB que fornece 5 Volts para alimentação.
As memórias de massa podem armazenar grande quantidade de informação e têm tido seu tamanho reduzido a cada dia. O disco rígido é o meio mais comum neste tipo de memória, mas osdisquetes ainda ocupam uma pequena parcela do mercado. Não é tão rápida como a memória flash mas já é possível utilizá-la em equipamentos de reprodução de música e filmes como os portáteis que reproduzem videoclipes de música em vários formatos, como MPEG.
Capacidade de expansão
De um modo geral os computadores encontram-se limitados nas quantidades de memória que podem conter. A esse limite chamado capacidade de expansão corresponde o valor máximo de memória que um sistema específico pode conter. Existem limitações quanto ao hardware e ao software.
No que respeita às limitações de hardware, de equipamento, a quantidade de memória é limitada pelo espaço de endereçamento do processador. Um processador que utilize endereços de 32 bits, por exemplo, só poderá endereçar 2³² (4 294 967 296) palavras de memória. Esta é a razão pela qual os computadores que utilizam processadores 32 bit (x86) são limitados a 4 gigabytes de memória. Enquanto os processadores atuais 64 bit gerenciam até 128 GB de memória RAM e 16 TB de memória virtual. O sistema operacional também deve ser 64 bit para trabalhar com esses valores.
Um determinado software (como o sistema operativo) pode ter sido desenhado para permitir uma quantidade limitada de memória.
O limite de capacidade de expansão de memórias RAM também é limitado pela placa-mãe do computador, que provê um certo número de fendas para as cartas de memória, bem como o chipsetnecessário para acessar a memória principal.
Memória RAM
Memória de acesso aleatório (do inglês Random Access Memory, frequentemente abreviado para RAM) é um tipo de memória que permite a leitura e a escrita, utilizada como memória primária em sistemas eletrônicos digitais. O termo acesso aleatório identifica a capacidade de acesso a qualquer posição em qualquer momento, por oposição ao acesso sequencial, imposto por alguns dispositivos de armazenamento, como fitas magnéticas. O nome não é verdadeiramente apropriado, já que outros tipos de memória (como a ROM) também permitem o acesso aleatório a seu conteúdo. O nome mais apropriado seria Memória de Leitura e Escrita. Apesar do conceito de memória de acesso aleatório ser bastante amplo, atualmente o termo é usado apenas para definir um dispositivo eletrônico que o implementa, basicamente um tipo específico de chip. Nesse caso, também fica implícito que é uma memória volátil, isto é, todo o seu conteúdo é perdido quando a alimentação da memória é desligada. A memória principal de um computador baseado na Arquitetura de Von-Neumann é constituída por RAM. É nesta memória que são carregados os programas em execução e os respectivos dados do utilizador. Uma vez que se trata de memória volátil, os seus dados são perdidos quando o computador é desligado. Para evitar perdas de dados, é necessário salvar a informação para suporte não volátil (por ex. disco rígido), ou memória secundária.
Há também quem diga que uma memória volátil pode ser "burlada" ou "congelada" com hidrogênio liquido, ou seja, mesmo a memória sendo desligada, ela não perderia seus dados.
Tipos
Exemplo de memória gravavél de acesso aleatório volátil: Módulos Synchronous Dynamic RAM, usada principalmente como memória principal em computadores pessoais, workstations e servidores.
Existem basicamente dois tipos de memória em uso: SDR e DDR. As SDR são o tipo tradicional, onde o controlador de memória realiza apenas uma leitura por ciclo, enquanto as DDR são mais rápidas, pois fazem duas leituras por ciclo. O desempenho não chega a dobrar, pois o acesso inicial continua demorando o mesmo tempo, mas melhora bastante. Os pentes de memória SDR são usados em micros antigos: Pentium II e Pentium III e os primeiros Athlons e Durons soquete A. Por não serem mais fabricados, eles são atualmente muito mais raros e caros que os DDR, algo semelhante ao que aconteceu com os antigos pentes de 72 vias, usados na época do Pentium 1.[1]
É fácil diferenciar os pentes SDR e DDR, pois os SDR possuem dois chanfros e os DDR apenas um. Essa diferença faz com que também não seja possível trocar as bolas, encaixando por engano um pente DDR numa placa-mãe que use SDR e vice-versa (a menos que você use um alicate e um martelo, mas a placa provavelmente não vai funcionar mais depois. Mais recentemente, temos assistido a uma nova migração, com a introdução dos pentes de memória DDR2. Neles, o barramento de acesso à memória trabalha ao dobro da freqüência dos chips de memória propriamente ditos. Isso permite que sejam realizadas duas operações de leitura por ciclo, acessando dois endereços diferentes. Como a capacidade de realizar duas transferências por ciclo introduzida nas memórias DDR foi preservada, as memórias DDR2 são capazes de realizar um total de 4 operações de leitura por ciclo, uma marca impressionante. Existem ainda alguns ganhos secundários, como o menor consumo elétrico, útil em notebooks.[1]
Os pentes de memória DDR2 são incompatíveis com as placas-mãe antigas. Eles possuem um número maior de contatos (um total de 240, contra 184 dos pentes DDR), e o chanfro central é posicionado de forma diferente, de forma que não seja possível instalá-los nas placas antigas por engano. Muitos pentes são vendidos com um dissipador metálico, que ajuda na dissipação do calor e permite que os módulos operem a freqüências mais altas.[1]
Capacidade e Velocidade
Chip de 1 Megabyte - Um dos últimos modelos desenvolvidos pela VEB Carl Zeiss Jena em 1989.
A capacidade de uma memória é medida em Bytes, kilobytes (1 KB = 1024 ou 210 Bytes), megabytes (1 MB = 1024 KB ou 220 Bytes) ou gigabytes (1 GB = 1024 MB ou 230 Bytes).
A velocidade de funcionamento de uma memória é medida em Hz ou MHz. Este valor está relacionado com a quantidade de blocos de dados que podem ser transferidos durante um segundo. Existem no entanto algumas memórias RAM que podem efetuar duas transferências de dados no mesmo ciclo de clock, duplicando a taxa de transferência de informação para a mesma frequência de trabalho. Além disso, a colocação das memórias em paralelo (propriedade da arquitetura de certos sistemas) permite multiplicar a velocidade aparente da memória.
Cache
Top LR, DDR2 com dissipador de calor, DDR2 sem dissipador de calor, Laptop DDR2, DDR, DDR Laptop
De qualquer forma, apesar de toda a evolução a memória RAM continua sendo muito mais lenta que o processador. Para atenuar a diferença, são usados dois níveis de cache, incluídos no próprio processador: o cache L1 e o cache L2. O cache L1 é extremamente rápido, trabalhando próximo à freqüência nativa do processador. Na verdade, os dois trabalham na mesma freqüência, mas são necessários alguns ciclos de clock para que a informação armazenada no L1 chegue até as unidades de processamento. No caso do Pentium 4, chega-se ao extremo de armazenar instruções já decodificadas no L1: elas ocupam mais espaço, mas eliminam este tempo inicial. De uma forma geral, quanto mais rápido o cache, mais espaço ele ocupa e menos é possível incluir no processador. É por isso que o Pentium 4 inclui apenas um total de 20 KB desse cache L1 ultra-rápido, contra os 128 KB do cache um pouco mais lento usado no Sempron.[1]
Em seguida vem o cache L2, que é mais lento tanto em termos de tempo de acesso (o tempo necessário para iniciar a transferência) quanto em largura de banda, mas é bem mais econômico em termos de transistores, permitindo que seja usado em maior quantidade. O volume de cache L2 usado varia muito de acordo com o processador. Enquanto a maior parte dos modelos do Sempron utilizam apenas 256 KB, os modelos mais caros do Core 2 Duo possuem 4 MB completos.
Memória Rom
A memória somente de leitura (acrónimo ROM (em inglês)) é um tipo de memória que permite apenas a leitura, ou seja, as suas informações são gravadas pelo fabricante uma única vez e após isso não podem ser alteradas ou apagadas, somente acessadas. São memórias cujo conteúdo é gravado permanentemente.
Uma memória somente de leitura propriamente dita vem com seu conteúdo gravado durante a fabricação. Atualmente, o termo Memória ROM é usado informalmente para indicar uma gama de tipos de memória que são usadas apenas para a leitura na operação principal de dispositivos eletrônicos digitais, mas possivelmente podem ser escritas por meio de mecanismos especiais. Entre esses tipos encontramos as PROM, as EPROM, as EEPROM e asmemórias flash. Ainda de forma mais ampla, e de certa forma imprópria, dispositivos de memória terciária, como CD-ROMs, DVD-ROMs, etc., também são algumas vezes citados como memória ROM.
Apesar do nome memória ROM ser usado algumas vezes em contraposição com o nome memória RAM, deve ficar claro que ambos os tipos de memória são de acesso aleatório.
Arquitetura da ROM
Com a evolução da ROM seu próprio nome perdeu sentido pois os dados são gravados nelas apenas uma vez. Depois disso, essas informações não podem ser apagadas ou alteradas, apenas lidas pelo computador, exceto por meio de procedimentos especiais, mas seu foco não é para gravação com freqüência. Vários aparelhos eletrônicos usam essa tecnologia, como leitores de DVD, placas de computador, taxímetros, celulares. Dá-se o nome de firmware para o software gravado dentro da ROM para o funcionamento destes aparelhos. O firmware de um aparelho é para ele como um sistema operacional, que além de fazer a comunicação entre o usuário e o aparelho, tem funções pré-programadas para execução quando solicitadas pelo usuário ou por um outro aparelho nele acoplado. O firmware pode ser atualizado caso seja necessário por alguma eventualidade ou erro de programação, mas para isto o aparelho deve estar funcional para poder fazer a atualização.
A memória ROM também foi bastante usada em cartuchos de videogames. Atualmente emuladores de videogames utilizam "roms", que nada mais são que os softwares extraídos de um cartucho. (sem uma carcaça de plástico para poder ser manuseado).
Cache
Na área da computação, cache é um dispositivo de acesso rápido, interno a um sistema, que serve de intermediário entre um operador de um processo e o dispositivo de armazenamento ao qual esse operador acede. A vantagem principal na utilização de uma cache consiste em evitar o acesso ao dispositivo de armazenamento - que pode ser demorado -, armazenando os dados em meios de acesso mais rápidos
Cache de disco
O cache de disco é uma pequena quantidade de memória incluída na placa lógica do HD. Tem como principal função armazenar as últimas trilhas lidas pelo HD. Esse tipo de cache evita que a cabeça de leitura e gravação passe várias vezes pela mesma trilha, pois como os dados estão no cache, a placa lógica pode processar a verificação de integridade a partir dali, acelerando o desempenho do HD, já que o mesmo só requisita a leitura do próximo setor assim que o último setor lido seja verificado.
Cache em níveis
Com a evolução na velocidade dos dispositivos, em particular nos processadores, o cache foi dividido em níveis, já que a demanda de velocidade a memória é tão grande que são necessários caches grandes com velocidades altíssimas de transferencia e baixas latências. Sendo muito difícil e caro construir memórias caches com essas características, elas são construídas em níveis que se diferem na relação tamanho X desempenho.
Cache L1
Uma pequena porção de memória estática presente dentro do processador. Em alguns tipos de processador, como o Pentium 2, o L1 é dividido em dois níveis: dados e instruções (que "dizem" o que fazer com os dados). A partir do Intel 486, começou a se colocar a L1 no próprio chip [processador]. Geralmente tem entre 16KB e 128KB; hoje já encontramos processadores com até 16MB de cache.
Cache L2
Possuindo o Cache L1 um tamanho reduzido e não apresentando uma solução ideal, foi desenvolvido o cache L2, que contém muito mais memória que o cache L1. Ela é mais um caminho para que a informação requisitada não tenha que ser procurada na lenta memória principal. Alguns processadores colocam essa cache fora do processador, por questões econômicas, pois uma cache grande implica num custo grande, mas há exceções, como no Pentium II, por exemplo, cujas caches L1 e L2 estão no mesmo cartucho que está o processador. A memória cache L2 é, sobretudo, um dos elementos essenciais para um bom rendimento do processador mesmo que tenha um clock baixo. Um exemplo prático é o caso do Intel Itanium 9152M (para servidores) que tem apenas 1.6 GHz de clock interno e ganha de longe do atual Intel Extreme, pelo fato de possuir uma memória cache de 24Mb. Quanto mais alto é o clock do processador, mais este aquece e mais instável se torna. Os processadores Intel Celeron tem tão fraco desempenho por possuir menor memória cache L2. Um Pentium M 730 de 1.6 GHz de clock interno, 533 MHz FSB e 2 MB de cache L2, tem rendimento semelhante a um Intel Pentium 4 2.4 GHz, aquece muito menos e torna-se muito mais estável e bem mais rentável do que o Intel Celeron M 440 de 1.86 GHz de clock interno, 533 MHz FSB e 1 MB de cache L2.
Cache L3
Terceiro nível de cache de memória. Inicialmente utilizado pelo AMD K6-III (por apresentar o cache L2 integrado ao seu núcleo) utilizava o cache externo presente na placa-mãe como uma memória de cache adicional. Ainda é um tipo de cache raro devido a complexidade dos processadores atuais, com suas áreas chegando a milhões de transístores por micrómetros ou picómetros de área. Ela será muito útil, é possível a necessidade futura de níveis ainda mais elevados de cache, como L4 e assim por diante.
Nenhum comentário:
Postar um comentário