Buscar

2. MEMORIAS

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 62 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 62 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 62 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Na disciplina de Eletrônica Digital, vimos como são projetados e construídos diversos tipos de 
registradores. Apesar de serem muito rápidos, os registradores têm capacidade de 
armazenamento reduzidíssima: cada registrador é capaz de armazenar somente uma palavra por 
vez. 
– Porém, nos sistemas digitais em geral, e particularmente nos computadores, grandes 
quantidades de informação (palavras) devem poder ser armazenadas. Para tanto, é necessário 
que o sistema digital possua um conjunto específico de circuitos que sejam mais apropriados ao 
armazenamento simultâneo de um grande número de palavras. 
– Tais circuitos efetivamente existem e são genericamente denominados de memórias.
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Memórias são dispositivos semicondutores que armazenam informações na forma binária. São 
informações constituídas de números, letras, caracteres quaisquer, comandos de operações, 
endereços, etc. 
– Os bits das informações podem ser acessados, quando no procedimento de leitura, ou 
gravados/substituídos, quando no procedimento de escrita ou armazenamento. 
– As memórias semicondutoras são usadas como memória principal (interna) ou memória de 
trabalho de um computador, pois permanece em comunicação constante com a unidade central 
de processamento (CPU) à medida que um programa de instruções está sendo executado. 
– Uma outra forma de armazenamento no computador é efetuada pela memória auxiliar (externa) 
ou memória de massa, onde opera com uma velocidade mais baixa que a memória principal e 
armazena programas e dados que não estão sendo usados a todo o momento pela CPU. Esta 
memória transfere as informações para a memória principal quando apenas for necessária ou 
solicitada no processamento.
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Objectivo de um sistema de memória: GUARDAR DADOS (0’s e 1’s)
– Operações básicas -
● ESCREVER um dado; 
● LER um dado;
– Que dispositivo utiliza-se no armazenamento de um dado binário (0 ou 1)?
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Para guardar um dado basta um flip-flop
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– O seguinte arranjo representa um circuito de memória estática do mais elementar possível: 
memoriza apenas um bit de informação em um flip-flop tipo RS.
– A entrada END é para endereçamento. Para um bloco só, ela não faz muito sentido. Mas, num 
circuito real, com mais de um bloco, ela "conecta" ou "desconecta" logicamente as entradas e 
saída do flip-flop com uso das portas ES, ER e EQ conforme tópico anterior.
– D é a entrada do bit de informação. O inversor faz com que as entradas S e R do flip-flop só 
possam ser inversas, evitando estado impossível do flip-flop RS (S=1 e R=1).
– L/E é a entrada que define a operação da memória (leitura ou escrita). Usa a entrada de clock 
do flip-flop.
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Os dados podem ser guardados em “caixas”(endereços) de 1 bit, ou em “caixas” de vários bits
– Chama-se Largura da memória ao nº de bits que é guardado num mesmo endereço
● Por vezes chama-se também tamanho da “word”da máquina
– Uma memória com “nxm” bits tem n endereços, cada um com m bits
– Grande parte das memórias têm 8 bits (1 byte) de largura
– Uma memória de 64bits pode ser representada como:
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Desta forma para acessar um conjunto de dados é necessário usar um conjunto de flip-flops 
organizados de manira específica.
– Assim cada um deles é identificado através de um endereço dentro da memória.
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Uma memória qualquer tem que ter no mínimo uma via através da qual possa se se faça um 
acesso a um dado específico ( barramento de endereçamento), uma via por onde os dados 
possam entrar e/ou sair (barramento de dados) e uma via através da qual se possa controlar 
outros aspectos da memória ( barramento de controle). 
– Deste modo, detalha-se a seguir os três tipos de barramentos das memórias :
● Barramento de dados (Data Bus) → permite a entrada (escrita) e/ou saída (leitura) dos 
dados. Em grande parte dos circuitos integrados de memórias uma mesma linha física é 
utilizada como entrada e como saída (nunca simultaneamente, claro), diminuindo pela 
metade o número de pinos necessários para a transferência de dados.
● Barramento de endereçamento (Address Bus) → permite que uma posição de memória 
seja acessada através da combinação de zeros e uns (endereço) neste barramento.
● Barramento de Controle (Control Bus) → é um conjunto de linhas que permitem controles 
do tipo: habilitação do C.I. para o funcionamento (Chip Enable), habilitação da operaç ão 
de escrita(Write Enable), habilitação da função de leitura(Read Enable, estas duas 
geralmente num único pino do tipo Write/read), habilitação do barramento de dados, 
estado de stand by, estado de saídas em alta impedância ou tri-state (Output Enable) etc.
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Vamos tomar um exemplo de memória RAM 4 x 4, constituída por 16 CMs. 
– Para cada acesso à memória, o decodificador de endereços ativa o sinal de seleção de linha 
associado ao endereço aplicado as suas entradas, o que ativa todos os CMs da linha selecionada.
– Neste momento, se RWS=1 e CS=1, o novo conjunto de bits será armazenado nas CMs da linha 
selecionada. Por outro lado, se RWS=0 e CS=1, os bits que estão armazenados na linha 
selecionada passarão pelos buffersde saída das respectivas CMs e pelos buffersde entrada/saída 
do chip.
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– A organização da memória RAM implica em restrições de tempo nas operações de escrita e 
leitura. 
– Por exemplo, como o caminho crítico da entrada a saída passa pelo decodificador, as entradas 
de endereço devem estar estáveis antes de quaisquer outros sinais. 
– Isto significa que durante o ciclo de leitura mostrado abaixo, as entradas de endereço deverão 
ser fornecidas em t0, seguidas por CS em t1. Assim, os dados da memória estarão disponíveis 
somente em t2. 
– O atraso t2-t0 é denominado tempo de acesso à memória (memory-access time), enquanto que o 
tempo t2-t1é denominado tempo de habilitação da saída (output-enable time). 
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Note que após os valores das entradas de endereço terem sido modificadas em t3, os dados 
ainda estarão disponíveis até t5. 
– O intervalo t5-t3é denominado tempo de manutenção da saída (output-hold time). 
– Já o intervalo t5-t4é denominado tempo de desabilitação da saída (output-disable time). 
– Como o caminho entre as entradas de endereço e as saídas é maior do que o caminho entre CS 
até as saídas, o tempo de acesso determina a validade dos dados sempre que o endereço e CS 
forem aplicados ao mesmo tempo. 
– Por outro lado, se o endereço e CS deixarem de ser válidos (CS=0, no caso), o tempo de 
desabilitação determinará a validade dos dados. 
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Através da célula básica padrão analisada anteriormente, pode-se construir arquiteturas de 
memórias RAM estáticas no formato N x M,conforme exemplo abaixo, uma memória com 
estrutura de 4 localidades com 4 bits.
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Através da célula básica padrão analisada anteriormente, pode-se construir arquiteturas de 
memórias RAM estáticas no formato N x M,conforme exemplo abaixo, uma memória com 
estrutura de 4 localidades com 4 bits.
Prof. Rômulo Nunes
MICROS
● Estrutura básicade memória
– Através da célula básica padrão analisada anteriormente, pode-se construir arquiteturas de 
memórias RAM estáticas no formato N x M,conforme exemplo abaixo, uma memória com 
estrutura de 4 localidades com 4 bits.
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– O circuito é constituído de um decodificador de 2 canais, responsável pelo endereçamento de 
cada localidade através de A1e A0, no conjunto formado por 4 células interligadas 
horizontalmente. Os terminais de dados D estão interligados, verticalmente, cujo 
posicionamento do bit na palavra de dados é efetuado através da entrada de controle CS. Para 
completar, todas as entradas W R/ estão interligadas para propiciar o controle simultâneo da 
escrita/leitura em todas as localidades.
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Suponha que se deseje fabricar num único chip (circuito integrado) uma memória RAM capaz 
de armazenar 22nnxmm bits, seguindo a organização descrita anteriormente. Diagrama de blocos a 
seguir mostra as duas representações gráficas possíveis para um tal chip.
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Suponha que se deseje fabricar num único chip (circuito integrado) uma memória RAM capaz 
de armazenar 22nnxmm bits, seguindo a organização descrita anteriormente. Diagrama de blocos a 
seguir mostra as duas representações gráficas possíveis para um tal chip.
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Este chip deverá possuir n entradas de endereço (An-1, …, A1,A0), de modo a se poder selecionar 
cada uma dentre todas as 2n posições existentes na matriz.
– Este chip também deverá conter m entradas (In-1, …, I1,I0), e m saídas (On-1, …, O1,O0), de modo 
a permitir a leitura (=consulta) do conteúdo de uma das 2n linhas ou a escrita (=gravação) de 
uma nova informação numa das 2n linhas da matriz.
– Como existem duas operações possíveis sobre o conteúdo da matriz (leitura e escrita), é natural 
que deva existir uma entrada de seleção de operação. Esta entrada será denominada RWS 
(Read/Write Select).
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Quando RWS=0, a operação a ser realizada será a leitura do conteúdo da posição cujo endereço 
está presente na entrada de endereços. O valor lido aparecerá na saída do chip. 
– Quando RWS=1, a operação a ser realizada será a escrita da informação binária presente na 
entrada do chip na linha cujo endereço está presente na entrada de endereço. 
– Por fim, deve existir um sinal de habilitação do chip como um todo (CS - Chip Select). 
– Caso CS=0, o chip está desativado. Caso CS=1, o chip estará realizando a operação especificada 
pelo valor da entrada RWS. 
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Quando RWS=0, a operação a ser realizada será a leitura do conteúdo da posição cujo endereço 
está presente na entrada de endereços. O valor lido aparecerá na saída do chip. 
– Quando RWS=1, a operação a ser realizada será a escrita da informação binária presente na 
entrada do chip na linha cujo endereço está presente na entrada de endereço. 
– Por fim, deve existir um sinal de habilitação do chip como um todo (CS - Chip Select). 
– Caso CS=0, o chip está desativado. Caso CS=1, o chip estará realizando a operação especificada 
pelo valor da entrada RWS. 
– O sinal de habilitação do chip, CS, serve para o caso em que seja necessário mais de um chip 
para implementar a memória do computador.
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– A expansão da capacidade de uma memória pode ser efetuada pela palavra de dados, pelo 
aumento de localidade ou por ambos.
– Como primeiro exemplo tomaremos uma expansão por palavra de dados, onde a obtenção de 
uma memória de 256x8 é obtida pela expansão de dois blocos de memória de 256x4. 
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Os terminais de endereçamento A7
a A0, de seleção da pastilha CS e 
de controle de escrita/leitura R/W
são interligados, pois as operações 
são comuns aos dois blocos. 
– A barra de dados D7a D0é composta 
pela associação da barra de dados 
de cada bloco, resultando numa 
palavra de 8 bits
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Como segundo exemplo considere uma expansão por localidades de memórias, mostrando a 
formação de uma memória RAM 128x4, obtida a partir de blocos de memórias 32x4. 
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– O endereçamento é efetuado pelos 
terminais A6a A0, constituídos dos 
5 terminais de cada bloco de 
memória mais 2 terminais 
auxiliares, onde farão a seleção de 
cada bloco em sequência, através 
das entradas CS.
– Os terminais de dados D3a D0, 
bem como os terminais de 
escrita/leitura W R/ são apenas 
interligados.
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Exercício: Para se obter um subsistema de memória 16k x 8 a partirde memórias 4k x 8, 
interliga-se endereços, dados e controle,mantendo-se independentes apenas os sinais de 
habilitação das memórias.
– Exercício: Obter uma memória de1k x 8 a partir de memórias 1k x 4.
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Apesar da CM ter sido representada como sendo constituída por um latch D e duas portas, na 
prática sua fabricação pode ser levada a cabo com estruturas mais simples, que utilizam menos 
transistores. 
– A forma de implementação de CMs leva a classificação das memórias RAM em estáticas e 
dinâmicas. No caso da RAM estática (conhecida por SRAM, static RAM), a CM é feita com 6 
transistores, onde quatro deles formam dois inversores conectados em laço de realimentação, 
fazendo o papel do latch D. No lugar da porta Ee do bufferde saída há um transistor (para cada 
um, no caso), o qual serve como chave de liga-desliga.
– A memória SRAM é capaz de manter seu conteúdo por tempo indeterminado, desde que este a 
alimentação não seja interrompida. 
– No caso da memória dinâmica (conhecida por DRAM, dynamic RAM), cada CM é 
implementada com somente um transistor. A desvantagem deste tipo de RAM é que o conteúdo 
da CM é perdido após a operação de leitura, devendo ser reescrito. Para piorar, devido às 
imperfeições do processo de fabricação, o conteúdo da CM só se mantém por um curto período 
de tempo.
– Estes dois problemas são contornados pela utilização de um mecanismo de refresh construído 
dentro da memória, o qual periodicamente reforça o conteúdo de cada linha de CMs. Durante a 
operação de refresh, as operações de leitura e escrita são suspensas, o que reduz o desempenho 
deste tipo de memória. 
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– As memórias DRAM apresentam uma densidade muito grande, o que se traduz em maiores 
capacidades de armazenamento. Elas também apresentam um custo bem reduzido. 
– Devido a estas duas características, as DRAMs são muito utilizadas no projeto de produtos 
eletrônicos. 
– Por outro lado, as memórias SRAM são mais caras e apresentam menores capacidades de 
armazenamento. Porém, são mais velozes do que as memórias DRAM, sendo portanto 
apropriadas para os casos em que a quantidade de dados a serem armazenados não é grande e 
uma velocidade maior de operação é necessária. 
– As memórias SRAM e DRAM são ditas memórias voláteis, pois, uma vez interrompido o 
fornecimento de energia, elas perdem seu conteúdo. Já as memórias ROM são ditas não-
voláteis, pois não perdem seu conteúdo quando o fornecimento de energia é interrompido. As 
memórias ROM tem uma organização semelhante às memórias RAM (matriz de CMs com 
decodificador de endereço e buffers de saída). Porém, a CM de uma ROM é bem mais simples, 
normalmenteconstituída por um único transistor ou diodo, o qual pode ser configurado uma vez 
para permitir o acesso ao 0 lógico (=0V) ou ao 1 lógico (de 5V a 1,5 V, conforme a tecnologia).
– Nos computadores, as memórias ROM servem para armazenar todas as configurações básicas 
que jamais serão alteradas, como por exemplo, as rotinas de entrada e saída (denominadas de 
ROM-BIOS, nos computadores tipo PC). 
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– SRAM vs. DRAM
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Os tipos de DRAM existentes variam em função da capacidade, velocidade, consumo, custo e 
versatilidade: 
● SIMM (Single-In-line Memory Module) e DIMM (Dual-In-line Memory Module) – são 
módulos de memória que permitem uma instalação rápida e são padrões de diversos tipos 
de DRAMs. Os módulos SIMM e DIMM definem apenas como a DRAM é “empacotada”. 
● DRAM FPM (Fast Page module) – permite acesso mais rápido a qualquer posição de 
memória dentro da “página” corrente. Normalmente, a maioria dos dados gravados na 
memória são seqüenciais. Nesse tipo de DRAM, o endereço da linha (RAS) é enviado uma 
vez e o endereço da coluna (CAS) é incrementado. 
● DRAM EDO (Extended data output) – é uma melhoria em relação às FPM. Os dados são 
colocados na saída e a DRAM EDO já pode decodificar o próximo endereço sem que esses 
dados tenham sido lidos; 
● DRAM BEDO (Burst EDO) –Possui uma arquitetura que permite alcançar alta velocidade 
ao se acessar dados sequenciais; 
● SDRAM (Synchronous DRAM) –são organizadas em dois bancos que são acessados 
alternadamente utilizando um sinal de clock sincronizado com a CPU. Desse modo essas 
memórias alcançam altas taxas de transferências. 
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Tecnologia de módulos de memória RAM
● SIPP (Single in Line Pin Package): foi o primeiro módulo a ser criado e sua aparência 
lembrava um pente (daí o apelido “ pente de memória” ). Os terminais eram similares 
aos usados nos DIP, causando mau contanto e danificação. Eram encontrados em 
versões de 256KB, 1MB e 4MB, todos de 8bits;
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Tecnologia de módulos de memória RAM
● SIMM30-(Single in Line Memory Module): é basicamente um SIPP com novo encaixe, 
semelhante ao dos slots e não permite que os módulos sejam colocados invertidos. 
Eles têm 30 terminais, operando a 8bits em versões de 256KB, 1MB e 4MB; Possui 
módulos com e sem paridade;
● SIMM-72 (Single in Line Memory Module): possuem 72 terminais e trabalham com 
32 bits, tendo sido criados para uso com 486 e superiores. São encontrados com 
diversas capacidades, sendo as mais usuaisde 4MB, 8MB, 16MB e 32MB, com e sem 
paridade. Para saber se o módulo tem ou não paridade, basta contar o número de circuitos: 
se for ímpar ele possui paridade (em módulos com dupla-face, contar somente os 
circuitos de uma face);
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Tecnologia de módulos de memória RAM
● DIMM (Double in Line Memory Module): possuem 168 terminais (84 DE CADA 
LADO) e trabalham com 64bits. São encontrados com diversas capacidades acima de 
8MB, com e sem paridade. Os primeiros eram montados com FPM ou EDO e 
atualmente utilizam SDRAM ou superiores. Ao contrario dos anteriores, possui 
contatos independentes nas duas faces;
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Tecnologia de módulos de memória RAM
● RIMM (Rambus In Line Memory Module): padronizado pela Rambus para uso da 
RDRAM no micro. São fisicamente semelhantes as DIMM, porém não é possível o 
encaixe de módulos RIMM em soquetes DIMM e vice-versa;
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Alguns armazenamentos especiais
● Armazenamento de Dados com o Sistema Desligado – muitos equipamentos armazenam 
seus dados em memórias RAM alimentadas com baterias de reserva (NVRAM– RAM não-
volátil);
● Memória Cache – tipo de memória de alta velocidade e baixa capacidade de 
armazenamento que interage diretamente com a CPU. Na cache estão contidos os dados 
mais requisitados pelo processador e isso evita um acesso desnecessário na RAM.
● Memória FIFO (First-In, First-Out) – também conhecidas como buffers para 
armazenamento temporário. Por exemplo, osdados são transferidos em altas taxas do PC 
para a impressora. Como a impressão é mais lenta que a transferência, esses dados devem 
ser armazenados em FIFOs e daí podem ser impressos.
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Hierarquia das tecnologias de memória
● Hierarquia de dispositivos de armazenamento em computadores. A CPU enxerga nessa 
ordem e acessa primeiro a que está mais próxima.
● Subindo na hierarquia, quanto mais próximo da CPU, maior velocidade, maior custo, 
porém menor capacidade de armazenamento.
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Memórias Não Voláteis : são memórias cujas informações mantidas não são perdidas caso o 
computador seja desligado. Nos microcomputadores, existe um programa muito importante 
chamado de BIOS (Basic Input - Output System -Sistema Básicode Entrada e Saída). 
● O BIOS tem várias funções, entre as quais, a de realizar a "partida" do computador. 
Quando ligamos o computador, o BIOS realiza a contagem de memória, faz uma rápida 
checagem do funcionamento do computador e realiza a carga do Sistema Operacional que 
deve estar armazenado no disco. 
● O BIOS está gravado em uma memória permanente localizada na placa mãe. 
– ROM (Read Only Memory) → memória somente para leitura. Este tipo de memória não é 
volátil (pode-se dezenergizá -la sem perder a informação armazenada), e é utilizada para o 
armazenamento de programas e dados que serão utilizados continuamente em um sistema sem a 
necessidade de alteração, como é o caso do programa BIOS (Basic Input Output System ) de um 
computador. O programa armazenado não necessita ser carregado toda vez que se liga o 
sistema. A evolução deste tipo de memória deu origem às memórias dos tipos PROM, EPROM, 
EEPROM e FLASH, discutidas mais adiante.
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– ROM programada por máscara
● ROM "programada" pelo fabricante. Quando se deseja uma ROM, estabelece-se o 
programa interno e encomenda-se o dispositivo ao fabricante. 
● O fabricante criará então uma máscara que determinará as conex ões elétricas de uma 
matriz de elementos semicondutores (diodosfus íveis) para produzir o chip encomendado. 
Este processo é caro, sendo viável somente para construção em larga escala.
– PROM 
● É uma ROM programável uma única vez, pelo u suário. Este tipo de memória é comprada 
virgem e o usuário efetua a gravação através de um gravador de PROMs. A memória é uma 
matriz de diodos e a gravação mantém ou queima um "diodo -fusível" desta matriz padrão, 
conforme se queira o 1 ou o 0 numa determinada posição.
● Exemplos Comerciais: 74186 (64x8) ®tempo de acesso »50 ns;
TMS27C256 (32kx8) ®tempo de acesso »120 a 250 ns;
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– ROM programável Apagável (EPROM)
● A EPROM é o tipo de ROM mais utilizada. Igualmente à PROM, é uma matriz virgem que 
pode ser gravada. A diferença é que ela pode ser “apagada” (ou recondicionada ao seu 
estado “virgem”) através de radiação ultravioleta (UV). Esta memória tem uma janela de 
quartzo, transparente ao UV, para este fim. Num dia ensolarado de verão, com Sol do meio 
dia, pode -se apagar uma EPROM em uns vinte minutos, se esta for colocada sob os raios 
do Sol. Normalmente são utilizadas lâmpadas fluorescentes sem a camada de cristais de 
fósforo para apagar EPROMS. Otempo típico de apagamento através de um dispositivo 
apagador de EPROMs é de 15 a 20 minutos. 
● Existem vários e baratos dispositivos no mercado capazes de gravarem os mais variados 
tipos de EPROM. Esta memória é por definição somente para leitura e sua gravação inicial 
é efetuada através de tensões bem acima de sua tensão nominal de funcionamento (5V). É 
muito importante saber a tensão exata de gravação de uma memó ria. Tipicamente a tensão 
tem passos de 0,5 volts e vai de 8 a 28 volts. Atualmente esta tensão tende a ficar num 
valor padronizado pela maioria dos fabricantes, mas ainda existem muitos problemas de 
diferenças de tensões de gravação.
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– ROM programável apagável eletricamente (EEPROM=E2PROM)
● É idêntica à EPROM, com a vantagem adicional poder ser apagada ou reprogramada 
eletricamente. Muito utilizada em sistemas de BIOS juntamente com as RAMs não-
voláteis.
– FLASH
● São memórias permanentes utilizadas geralmente em computadores e no interior de 
microcontroladores, cuja função é a de guardar os programas principais das máquinas. Ao 
contrário das outras ROM’s, esta pode funcionar com tensão de gravação de 5,0 volts.
● Além disso, a memória flash oferece um tempo de acesso rápido,embora não tão rápido 
como a memória volátil (DRAM utilizadas para a memória principal em PCs) e melhor 
resistência do que discos rígidos. Estas características explicam a popularidade de memória 
flash em dispositivos portáteis. 
● Outra característica da memória flash é que quando embalado em um "cartão de memória" 
são extremamente duráveis, sendo capaz de resistir a uma pressão intensa, variações 
extremas de temperatura, e até mesmo imersão em água
● Uma limitação é que a memória flash tem um número finito de modificações 
(escrita/exclusão). Porém este efeito é parcialmente compensado por alguns chip firmware 
ou drivers de arquivos de sistema de forma dinâmica e escreve contando o remapeamento 
dos blocos, a fim de difundir as operações escritas entre os setores
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Existem dois tipos de memórias flash, a NAND e a NOR.
● A memória flash NOR (Not OR) permite acessar os dados da memória de maneira 
aleatória, com alta velocidade. Foi a primeira a se popularizar, chegando ao mercado em 
1988, seus chips possuem uma interface de endereços semelhante à da RAM, sendo 
utilizado para armazenar o BIOS das placas-mãe e também firmwares de vários 
dispositivos, que antes eram armazenados em memória ROM ou EPROM. 
● Alguns dos problemas nesse tipo de memória devem-se ao seu alto custo, e ao seu alto 
tempo de gravação nas células. Mas embora esses problemas existam, ela é largamente 
utilizada até hoje em celulares, palmtops e firmware. 
● Chegaram a ser empregadas na fabricação das memórias PCMCIA e CompactFlash, mas 
com a introdução do tipo NAND, desapareceram deste ramo.
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Existem dois tipos de memórias flash, a NAND e a NOR.
● A memória flash NAND (Not AND) trabalha em alta velocidade, faz acesso sequencial às 
células de memória e trata-as em conjunto, isto é, em blocos de células, em vez de acessá-
las de maneira individual.[2] Essa arquitetura foi introduzida pela Toshiba em 1989. 
● Cada bloco consiste em um determinado número de páginas. As páginas são tipicamente 
512, 2048 ou 4096 bytes em tamanho. A página é associada a alguns bytes (tipicamente 12-
16 bytes). Atualmente são os tipos de memória mais usados em dispositivos portáteis.
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Exercício
● Mostrar a forma de onda da saída da memória ROM com conversor D/A da figura 
abaixo: 
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Memória Cache 
● Parte do problema de limitação de velocidade do processador refere-se á diferença de 
velocidade entre o ciclo de tempo da CPU e o ciclo de tempo da memória principal, ou 
seja, a MP transfere bits para a CPU em velocidades sempre inferiores às que a CPU pode 
receber e processar os dados, o que acarreta, muitas vezes, a necessidade de acrescentar-se 
um tempo de espera para a CPU (wait state).
● O problema de diferença de velocidade se torna difícil de solucionar apenas com 
melhorias no desempenho das MP, devido a fatores de custo e tecnologia. 
● Enquanto o desempenho dos microprocessadores, por exemplo, vem dobrando a cada 
18/24 meses, o mesmo não acontece com a taxa de transferência e o tempo de acesso das 
memórias DRAM, que vêm aumentando pouco de ano para ano.
● Na busca de uma solução para este problema foi desenvolvida uma técnica que 
consiste da inclusão de um dispositivo entre a CPU e a MP, denominado de memória 
CACHE, cuja função é acelerar a transferência de informações entre CPU e MP e, 
com isso, aumentar o desempenho do sistema de computação.
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Memória Cache 
● A cache é um nível na hierarquia de memória entre a CPU e a memória principal 
(MP). É construída com memória SRAM, que é muito mais rápida do que a DRAM, 
normalmente empregada na construção de MP. 
● A cache é fabricada com tecnologia semelhante à da CPU e, em consequência possui 
tempos de acesso compatíveis, resultando numa considerável redução da espera da 
CPU para receber dados e instruções. Como o custo da memória estática é muito alto, a 
cache normalmente é muito menor do que a memória principal.
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Memória Cache 
● Poder-se-ia fazer uma analogia entre a memória cache e o fichário que ficaria em nossa 
mesa de trabalho. 
● Um arquivo (memória principal) maior conteria informações completas para realização do 
trabalho e o fichário (a memória cache) conteria informações mais corriqueiras. 
● Mais próximo do trabalhador (a CPU), o fichário (a cache) aumentaria a rapidez na 
realização do trabalho e reduziria a pesquisa no arquivo.
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Memória Cache 
● Com a inclusão da cache pode-se enumerar, de modo simplista, o funcionamento do 
sistema:
1 → Sempre que a CPU vai buscar uma nova informação (instruções ou dados), ela 
acessa a memória cache;
2 → Se a informação estiver na cache (chama-se “ cache hit” – acerto), ela é transferida 
em alta velocidade (compatível com a da CPU);
3 → Se a informação não estiver na cache (chama-se “ cache miss” – falta), então o 
sistema está programado para transferir a informação desejada da MP para a cache. Só 
que esta informação não é somente da instrução ou dado desejado, mas dele e de um 
grupo subsequente, na pressuposição de que as instruções/dados do grupo serão 
requeridas pela CPU em seguida e, portanto, já estarão na cache quando necessário.
● Para haver algum aumento no desempenho de um sistema de computação com a 
inclusão da memória cache énecessário que haja mais acertos (hits) do que faltas 
(miss). Isto é, a memória cache somente é produtiva se a CPU puder encontrar uma 
quantidade apreciável de palavras na cache, suficientemente grande para sobrepujar as 
 eventuais perdas de tempo com as faltas, que redundam em transferência de um 
bloco de palavras da MP para a cache, além da efetiva transferência da informação 
desejada.
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Memória Cache 
● Basicamente há dois tipos de memória cache:
– A que vem incorporada à máquina.
– A que é implementada via software na memória RAM do sistema.
● A memória cache incorporada à máquina é um tipo muito mais rápido do que a memóriaRAM convencional. Por exemplo, em uma placa mãe típica de 100MHz, o tempo de acesso 
à memória principal é de 180 nano segundos, e o acesso à memória cache é na ordem de 45 
nanosegundos. Por isso ela é usada para armazenar tabelas muito usadas pelo sistema 
operacional ou para executar parte de programas que necessitam de maior velocidade de 
processamento.
● A memória cache criada via software é usada para aumentar o desempenho do acesso ao 
disco do sistema, guardando as informações mais acessadas na memória, ou seja, quando 
for preciso acessar uma nova informação, ela já está armazenada em memória, que possui 
um tempo de acesso muito mais rápido do que o disco. Com isso, o número de vezes que a 
unidade de disco é acessada diminui, reduzindo o desgaste físico do disco e da cabeça de 
leitura e gravação.
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Memória Cache 
● Níveis de Cache: Existem vários “níveis” de cache em um computador moderno, cada nível 
agindo como um buffer para informações recentemente usadas para aumentar o 
desempenho. Mas quando referimos apenas a simplesmente “cache”, normalmente está se 
referenciando o nível “secundário” ou nível 2 que é aquela posicionada entre o processador 
e a memória principal.
● Cada nível é mais próximo do processador e mais rápida que o nível mais abaixo. Cada 
nível também cacheia o nível mais abaixo dela, devido a sua velocidade aumentada relativa 
aos níveis mais baixo. 
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Memória Cache 
● Cache Primária –Layer 1: A cache nível 1 (L1) ou cache primária é a memória mais rápida 
de um PC. Ela é def fato construída diret amente no processador. Esta cache é muito 
pequena, geralmente de 9KB a 64KB, mas é extremamente rápida. Ela roda na mesma 
velocidade do processador. 
● Se o processador solicita uma informação e pode encontrá -la na cache L1, este é o melhor 
caso, pois a informação é imediatamente disponível e o processador não tem que esperar. 
● O processador Pentium III apresenta uma memória cache L1 de 16KB para instruções e 
outra de 16KB para dados. 
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Memória Cache 
● Cache Secundária –Layer 2: A cache nível 2 é uma cache secundária para o nív el 2, e é 
maior e um pouco mais lenta. Ela é usada para armazenar endereços recentes que não são 
mantidos pelo nível 1. Este nível tem um tamanho variando de 64KB a 2MB e até pouco 
tempo atrás era encontrada na placa mãe ou um modulo que é inserido na plac a mãe. 
● Os processadores Pentium Pro tém a cache L2 no mesmo pacote do processador (embora 
este não esteja no mesmo circuito do processador e da cache L1). Isto significa que ela roda 
muito mais rápida que a cache L2 que é separada e reside na placa mãe. 
● O Pentium II e III até 600MHz tém um meio termo, sua cache L2, de 512KB, roda na 
metade da velocidade da CPU. 
● O Pentium III acima 600MHz apresenta uma memória cache L2 de 256KB no mesmo 
pacote e opera na mesma velocidade da CPU.
● O nível dois algumas vezes é chamada de cache externa, desde que ela reside fora do 
processador. Mesmo nos Pentium Pro, que está em um chip separado no mesmo pacote.
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Memória Cache 
● Para haver algum aumento no desempenho de um sistema de computação com a 
inclusão da memória cache é necessário que haja mais acertos (hits) do que faltas 
(miss). Isto é, a memória cache somente é produtiva se a CPU puder encontrar uma 
quantidade apreciável de palavras na cache, suficientemente grande para sobrepujar as 
 eventuais perdas de tempo com as faltas, que redundam em transferência de um 
bloco de palavras da MP para a cache, além da efetiva transferência da informação 
desejada.
● Desta forma na implementação de memórias fortemente referenciada pela existência de 
localidades na execução dos programas. Sendo assim existem dois tipos de localidades: a 
espacial e a temporal.
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Memória Cache 
● Desta forma na implementação de memórias fortemente referenciada pela existência de 
localidades na execução dos programas. Sendo assim existem dois tipos de localidades: a 
espacial e a temporal.
● Localidade Temporal: As posições da memória, uma vez acessadas, tendem a ser 
acessadas novamente num futuro próximo. Normalmente ocorrem devido ao uso de 
laços de instruções, acessos a pilhas de dados e variáveis como índices, contadores e 
acumuladores; 
● Localidade Espacial: Se um programa acessa uma palavra de memória, há uma boa 
probabilidade de que o programa acesse num futuro próximo, uma palavra subsequente 
ou um endereço adjacente àquela palavra que ele acabou de acessar. Em outras 
palavras, os endereços em acessos futuros tendem a ser próximos de endereços de 
acessos anteriores. Ocorre devido ao uso da organização sequencial de programas. 
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Memória Cache 
● Outro fator que influencia diretamente o desempenho da cache é a forma de 
mapeamento dos dados da MP nela. Como o tamanho da cache é bem menor que MP, 
apenas uma parte dos dados da MP pode ser copiada na cache. 
● Existem basicamente três formas de mapeamento: o associativo, o direto e o set-
associativo.
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Memória Cache 
● Mapeamento completamente associativo: A palavra pode ser colocada em qualquer lugar 
da cache. Neste caso deve ser armazenado na cache não somente o dado mas também 
o endereço. 
● Para descobrir se a posição procurada está armazenada na cache, é feita a comparação 
simultânea de todos os endereços, caso seja localizado (cache hit) o dado é devolvido 
ao processador. 
● Caso o endereço pesquisado não se encontre na cache (cache miss) a memória principal é 
acessada.
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Memória Cache 
● Mapeamento direto: Cada palavra deve ser armazenada em um lugar específico na cache, o 
qual que depende do seu endereço na memória principal. O endereço é dividido em 
duas partes: Tag e Índice. 
● O índice é usado como endereço na cache. Indica a posição da cache onde pode estar 
armazenada a palavra. 
● O tag é usado para conferir se a palavra que está na cache é a que está sendo procurada, 
uma vez que endereços diferentes, com o mesmo índice serão mapeados sempre para a 
mesma posição da cache.
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Memória Cache 
● Mapeamento set-associativo: O mapeamento set-associativo é um projeto intermediário 
entre os dois anteriores. Neste caso, existem um número fixo de posições onde a palavra 
pode ser armazenada (pelo menos duas) que é chamado um conjunto. 
● Uma cache com um conjunto de duas posições é chamada 2-way set-associativa. 
● Como na cache com mapeamento direto, o conjunto é definido pela parte do endereço 
chamada índice. 
● Cada um dos tags do conjunto são comparados simultaneamente como tag do 
endereço. 
● Se nenhum deles coincidir ocorre um cache miss.
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Memória Cache 
● Outro problema a ser considerado na implementação de uma memória cache é a 
política de substituição das palavras. 
● Deve-se responder a seguinte pergunta: “ Em que local da cache será colocada a nova 
linha?” A política de substituição define qual linha será tirada da cache para dar 
lugar a uma nova. 
● No caso do mapeamento direto, cada palavra temum lugar predefinido, então não 
existe escolha. 
● Para o mapeamento completamente associativo, pode-se escolher qualquer posição da 
cache e no set-associativo, qualquer posição dentro do conjunto definido pelo índice.
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Memória Cache 
● As principais políticas de substituição são:
– Substituição Aleatória: Neste caso é escolhida uma posição qualquer da cache 
aleatoriamente para ser substituída. É mais simples de implementar mas não leva 
em conta o princípio da localidade temporal.
– First-in First-out: Remove a linha que está a mais tempo na cache. Exige a 
implementação de uma fila em hardware.
– LRU - Least Recently Used: Menos recentemente utilizado. Remove-se a linha 
que a mais tempo não é referenciada. Exige implementação de um contador para 
cada linha. Quando um hit ocorre na linha seu contador é zerado enquanto todos 
 os demais são incrementados. Quando for necessário substituir uma linha, será 
retirada aquela cujo contador tiver o valor mais alto.
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Memória Cache 
● Uma vez que todas as solicitações feitas a memória são realizadas através da cache, caso a 
CPU fizer a escrita de uma posição que estiver armazenada na cache, se esta alteração não 
for repassada para a MP, pode-se perder a atualização quando a linha da cache for 
substituída. 
● Para evitar este problema pode-se adotar duas estratégias:
– Escrita em ambas (Write-through): Cada escrita na cache é imediatamente 
repetida na memória principal;
– Escrita no retorno (Write-back): As escritas são feitas apenas na cache, mas ela 
será escrita na MP quando for substituída. Pode-se escrevê-la mesmo se não foi 
alterada ou somente se tiver sido modificada.
● Com a política “ write -through” pode haver uma grande quantidade de escritas 
desnecessárias na MP, com natural redução do desempenho do sistema. 
● Já a política “ write -back” minimiza esta desvantagem, porém a MP fica potencialmente 
desatualizada para utilização por outros dispositivos a ela ligados, como módulos de E/S, 
o que os obriga a acessar dados na cache.
Prof. Rômulo Nunes
MICROS
● Estrutura básica de memória
– Memória Cache 
● Uma vez que tanto os dados como as instruções são mantidos na memória principal, ambos 
tiram proveito da memória cache. Pode-se adotar cache unificada ou separada para 
cada tipo de conteúdo. 
● A cache separada possui como vantagem possuir uma Cache de instruções somente 
de leitura, o que simplifica o circuito e barramento independente ligando cada uma 
das caches e o processador, o que permite transferências simultâneas. 
● Além disso, pode-se adotar estratégias diferentes para cada cache (tamanho, 
organização, etc.). Por outro lado,a abordagem de cache separada apresenta como 
desvantagem o fato de que instruções e dados colocados em posições próximas da 
memória poderão estar nas duas caches.
	Slide 1
	Slide 2
	Slide 3
	Slide 4
	Slide 5
	Slide 6
	Slide 7
	Slide 8
	Slide 9
	Slide 10
	Slide 11
	Slide 12
	Slide 13
	Slide 14
	Slide 15
	Slide 16
	Slide 17
	Slide 18
	Slide 19
	Slide 20
	Slide 21
	Slide 22
	Slide 23
	Slide 24
	Slide 25
	Slide 26
	Slide 27
	Slide 28
	Slide 29
	Slide 30
	Slide 31
	Slide 32
	Slide 33
	Slide 34
	Slide 35
	Slide 36
	Slide 37
	Slide 38
	Slide 39
	Slide 40
	Slide 41
	Slide 42
	Slide 43
	Slide 44
	Slide 45
	Slide 46
	Slide 47
	Slide 48
	Slide 49
	Slide 50
	Slide 51
	Slide 52
	Slide 53
	Slide 54
	Slide 55
	Slide 56
	Slide 57
	Slide 58
	Slide 59
	Slide 60
	Slide 61
	Slide 62

Continue navegando