Buscar

Memória Principal - Organização de Computadores

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

Circuitos de Memória 
Memória Principal
Conforme veremos, existem diversos tipos de memórias que podem ser usadas por um computador.
A memória que vamos estudar agora é a chamada “Memória Principal”, sendo esta usualmente uma memória do tipo DRAM.
SRAM x DRAM
Memória Principal
Memória Principal
Memória Principal
Uma célula de memória pode ser representada da seguinte forma:
Memória Principal
Memória Principal
A quantidade de bits necessários para armazenar o endereço de uma célula não possui relação alguma com a quantidade de bits que essa célula pode armazenar.
Uma memória com 64 células que armazenam 128 bits cada e outra memória também com 64 células que armazena 8 bits cada precisam dos mesmos 6 bits de endereço.
Uma memória de 96 bits pode ser construida de diversas formas. 
Memória Principal
Memória Principal
A capacidade de uma memória pode ser dada através da seguinte fórmula: C = N x M, sendo N o número de células (endereços) e M a quantidade de bits armazenadas em cada célula.
Lembrar de dividir por 8 para chegar em byte.
Os computadores são organizados por palavras.
Um computador (de palavra) de 32 bits possui 4 bytes/word (palavra).
Um computador (de palavra) de 64 bits possui 8 bytes/word (palavra).
Exercício
Em uma memória principal com 4 kbyte de capacidade e com células de 16 bits possui:
Quantas células?
Quantos bits necessários para endereçar todos os endereços?
Uma memória possui 512 células de 16 bits, portanto:
Qual a capacidade total da memória em bytes?
Qual o maior endereço de memória?
Exercício
Exercício
Uma memória possui 512 células de 16 bits, portanto:
Qual a capacidade total da memória em bytes?
Qual o maior endereço de memória?
Resposta:
512 x 16 = 8192 bits. 		8192 / 8 = 1024 bytes.
Para 512 células de memória o maior endereço será 1000000000 ou 0x200. Não existem endereços negativos, portanto, nenhuma estratégia para números negativos precisa ser usada.
Memória Principal
A forma que os dados são gravados na memória importa.
Existem duas maneiras: 
little-endian (Intel, etc): byte 0 da palavra na posição menos significativa.
big-endian (Sparc, etc): byte 0 da palavra na posição mais significativa.
Existem problemas de incompatibilidade entre um e outro.
Memória Principal
Memória Principal
Problemas na transferência de dados entre memórias big-endian e little-endian.
Memória Principal
A memória principal normalmente é composta de uma memória do tipo DRAM (Dynamic Random Access Memory). 
Memórias desse tipo são consideradas voláteis pois assim que cortamos sua fonte de alimentação de energia ela perde seus dados.
Memórias DRAM necessitam sempre serem relembradas de seus estados (dados) e para isso possuem um sistema interno de refresh.
Memória Principal
Cada bit em uma memória DRAM é armazenado em um único capacitor.
Conforme o tempo vai passando a energia vai sendo dissipada desse capacitor e, devido a isso, é necessário dar um “refresh” em suas células para evitar perca de dados.
O intervalo entre os refreshs está na casa dos milissegundos (8 ms < T < 120 ms).
Enquanto o processo de refresh ocorre, a memória não pode ser utilizada para escrita ou leitura.
Memória Principal
Existem também memórias do tipo SRAM (Static Random Access Memory). Seu nome é dado devido sua característica de não precisar ser “relembrada”.
Memórias desse tipo são mais caras e maiores do que as memórias do tipo DRAM, porém, funcionam em velocidades maiores.
Normalmente são construidas através de flip-flops.
É o tipo de memória usada como memória cache.
Assim como a memória DRAM, ela também é volátil.
Empacotamento de memórias
Monta-se um grupo de chips de memória em uma placa de circuito com contatos nas duas faces.
Dual Inline Memory Module (DIMM)
São 168 a 184 contatos, e normalmente se transfere 64 bits.
Em módulos domésticos, detecção e correção de erros são omitidas.
Taxa média de 1 erro a cada 10 anos.
Memória Principal
Antigamente eram usadas memórias ram SDR SDRAM (Synchronous Dynamic Random Access Memory).
SDR significa Single Data Rate.
Essas memórias podiam enviar uma informação a cada puslo do clock do computador.
A próxima evolução desse tipo de memória foi a DDR SDRAM.
Esse tipo de memória pode enviar duas informações por ciclo do relógio.
Envia uma informação quando o pulso sobe e outra quando abaixa.
Memória Principal
A memória DDR2 SDRAM surgiu logo em sequência e aumentou a taxa de transferência de dados aumentando a frequência da mesma.
Outra melhoria que surgiu com a DDR2 foi a inclusão de um sistema de cache que agilizava o acesso a memória em alguns cenários.
A memória DDR3 aperfeiçoou esse sistema interno de cache dobrando a capacidade de armazenamento do mesmo. Também aumentou a frequência máxima para as memórias em relação a DDR2.
Memória Principal
DDR4: 
Melhorias na quantidade de pinos
Menor consumo de voltagem
Maiores taxas de frequência
Limite aproximado das frequências dos tipos de memórias SDRAM:
DDR - 200 a 600 MHz
DDR2 - 400 a 1066 MHz
DDR3 - 800 a 1600 MHz
DDR4 – 1300 a 2800 MHz
Atenção: as memórias DDR são do tipo DIMM. Ser DIMM define somente o padrão do “encaixe” / encapsulamento da memória.
Memórias estáticas x dinâmicas
Memória estática: construção baseada em flip-flops do tipo D.
Conserva o conteúdo enquanto houver energia.
Rápidas no acesso (tempo da ordem de alguns nanosegundos).
Numero grande de transistores para armazenar um único bit.
Tamanho grande e custo alto.
Utilizadas normalmente em circuitos de cache.
Memórias estáticas x dinâmicas
Memória dinâmica: construção baseada em transistor e capacitor.
Conserva o conteúdo enquanto houver carga no capacitor.
O valor armazenado necessita ser renovado periodicamente (sinal de refresh).
Mais lentas (dezenas de nanosegundos)
Densidade muito alta de bits por chip
Custo baixo por bit armazenado.
Seus chips são usados nos módulos DIMM.
Memórias não voláteis
ROM (Read Only Memory):
Dados inseridos durante a fabricação do chip (máscara com padrão de bits necessário).
Em caso de erro, deve-se produzir outro chip.
São baratas quando fabricadas em volume suficiente.
Utilizadas em produtos com grande volume de fabricação.
Memórias não voláteis
PROM (Programable Read Only Memory)
Chip é produzido “virgem”, sendo programado (pelo usuário) uma única vez.
Consta de uma série de fusíveis que serão queimados ou não, caso se deseje um 0 ou 1 no bit.
Caso haja algum dado errado, deve-se programar outro chip.
Utilizadas em equipamentos com pequeno volume de produção.
Memórias não voláteis
EPROM (Erasable Programable Read Only Memory)
Chip possui uma janela de quartzo transparente.
Ao ser exposta a 15 minutos de luz ultravioleta forte, todos os bits mudam para 1.
Pode ser apagada várias vezes.
Não permite apagar posições individuais.
Gravação por pulsos elétricos nas entradas.
Devem ser inseridas em um dispositivo próprio para serem programadas.
Utilizada em prototipagem de dispositivos.
Memórias não voláteis
EEPROM (Electric Erasable Programable Read Only Memory)
Pode ser apagada por pulsos elétricos.
Podem ser apagados bytes individuais.
É possível ser reprogramada no próprio circuito onde ela estiver inserida
Desvantagens: Capacidade bem menor que uma EPROM e mais lentas.
10 vezes mais lentas que uma DRAM
Utilizada em prototipagem de dispositivos, e também nos chips BIOS ou UEFI dos equipamentos.
Memórias não voláteis
Memórias flash
Variação da EEPROM, onde apaga-se blocos da memória ao invés de bytes individuais.
A velocidade, portanto, é bem maior do que a EEPROM e qualquer outra das vistas anteriormente.
Lenta comparando com as memórias DRAM.
Bem mais rápidas que uma unidade de disco.
Utilizada em pen-drives, cartões de memória, drives SSD.
Problema: Se desgastam após serem reescritas cerca de 100000 vezes.
Exemplo de circuito
Memória 4x3 (4 palavras de 3 bits)
CS: seleciona o chip (chip select);
RD: leitura (read)
OE: habilita saída (output enable)
I0 a I2: entradas
O0 a O2: saídas
A0 e A1: endereços
Chip de memória de 4 Mbit 
A0 a A18: 19 bits de endereço (512K endereços).
D0 a D7: bits de dados
CS: chip select
WE: write enable (escrita)
OE: output enable (leitura)
Problema: endereçamento linear, numero grande de endereços.
Chip de memória de 4 Mbit 
A0 a A10: 11 bits de endereço (2048 endereços de linhas e 2048 endereços de colunas).
D: bit armazenado
CS: chip select
WE: write enable (escrita)
OE: output enable (leitura)
RAS: habilita endereço de linha
CAS: habilita endereço de coluna
Bits são armazenados em matriz quadrada (menos linhas de endereço).

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Outros materiais