Eletrônica Digital II ELT013 Engenharia de Computação Aula 5 DISPOSITIVOS DE MEMÓRIA PARTE II ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 2 MEMÓRIA FLASH ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 3 EPROM x EEPROM EPROM Não voláteis com tempos de acesso rápidos Alta densidade e baixo custo por bit Removidas do circuito para serem apagadas e reprogramadas EEPROM Não voláteis com tempos de acesso rápidos Baixa densidade e custo muito alto por bit Reprogramável bit a bit sem remoção do circuito Desafio dos projetistas: - Fabricar uma memória não volátil - Alta densidade (EPROM) - Capacidade de ser apagada eletricamente (EEPROM) - Custo baixo (EPROM) ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 4 Memória Flash Memória flash Como a célula EPROM: simples de um único transistor Custo consideravelmente menor do que de EEPROM Curto tempo de apagamento e escrita → Flash ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 5 Características da Memória Flash Apagamento total Apaga todas as células simultaneamente Apagamento por setor Apaga setores específicos da matriz de memória (por exemplo 512 bytes) Possibilita a atualização de apenas parte da memória Tipicamente o tempo de escrita é mais rápido que EPROM ou EEPROM ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 6 CI de Memória Flash CMOS Típico (1) Para o CI da figura 4M x 8 ou 2M x 16 A0...A20 → Barramento de dados DQ0...DQ15 → Barramento de endereços WE → Write Enable Nível baixo para operação de escrita OE → Output Enable Nível ALTO coloca a saída em alta impedância CE → Chip Enable Nível ALTO coloca a saída em alta impedância ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 7 CI de Memória Flash CMOS Típico (2) Uma característica do CI CMOS de memória flash é o registro de comando: Códigos de comando são escritos neste registro para controlar quais operações ocorreram dentro do chip. A lógica de controle de estado examina os conteúdos do registro de comando e gera sinais de lógica e controle. ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 8 Diagrama Funcional de uma Memória Flash ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 9 Aplicações das ROMs (1) Memória de programa de microcontroladores dedicados Sistemas automotivos de frenagem automática, celulares, microondas, filmadoras digitais, etc. Transferência de dados e portabilidade, como celulares, câmeras digitais, tocadores de MP3, pen-drives, etc. Memória bootstrap Programa relativamente pequeno armazenado em ROM que carrega os programas do sistema operacional do dispositivo de armazenamento de massa (disco) na memória principal do computador. ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 10 Aplicações das ROMs (2) Tabelas de Dados, os quais não mudam como tabelas trigonométricas e de conversão de código. Conversores de dados, que expressos em um tipo de código são convertidos em uma saída expressa de outro tipo, como leituras de BCD para segmentos de dispositivos LED. ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 11 Aplicações das ROMs (3) Gerador de função, que produzem formas de onda senoidais, dentes de serra, triangulares e quadradas. Uma tabela de consulta ROM e um DAC são usados para gerar um sinal de saída com forma de onda senoidal. ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 12 RAM SEMICONDUTORA ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 13 RAM Semicondutora RAM (memória de acesso direto) significa que qualquer endereço de memória possui a mesma facilidade de acesso de qualquer outro. Usada em computadores para armazenamento temporário de programas e dados Requer tempos de ciclo de leitura e escrita baixos, para evitar a diminuição da velocidade de operação do computador: A memória RAM pode ser escrita ou lida rapidamente com mesma facilidade. É volátil e perde toda informação armazenada se a energia é interrompida: Algumas RAMs CMOS podem ser energizadas com baterias quando a fonte de energia principal é interrompida. ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 14 Arquitetura da RAM Considera-se a RAM como composta por uma quantidade de registradores: Cada registrador armazena uma única palavra de dados em um endereço único. A maioria dos CIs de memória RAM possui uma ou mais entradas de CHIP SELECT (CS) Usadas para ativá-lo ou desabilitá-lo completamente. No modo desativado, todas as entradas e saídas de dados ficam desabilitadas, não se podendo ler ou escrever no chip. Para diminuir a quantidade de pinos no encapsulamento do CI, os fabricantes combinam funções de entrada e saída de dados usando pinos comuns. ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 15 Organização Interna de uma RAM 64 x 4 64 palavras de 4 bits 6 linhas de em Endereço A5...A0 → 26 = 64 Exemplo: Endereço 0110102 = 2610 Seleciona a linha 26 da saída do decodificador e o registrador correspondente ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 16 Processo de Leitura em um Registrador A entrada de ativação de escrita WE ou R/W deve estar como 1. A entrada CHIP SELECT também tem de estar ativada. Os buffers de entrada ficam desativados durante a leitura. Quando o valor do registrador estiver estabilizando no buffer a linha OE vai para 0 habilitando a saída. ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 17 Processo de Escrita em um Registrador A entrada de ativação de escrita WE ou R/W deve estar como 0. A entrada CHIP SELECT também tem de ser 0. Os buffers de saída tristate ficam em HiZ durante uma escrita de dados. ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 18 RAM ESTÁTICA (SRAM) ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 19 RAM Estática (SRAM) Células de memória de RAM estática (SRAM) são flip-flops que permanecem em um determinado estado (armazenamento de um bit), indefinidamente, desde que a energia do sistema não seja interrompida. São disponíveis em variações bipolar, MOS e BiCMOS: A maioria das aplicações atualmente usam RAMs CMOS. ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 20 Diagrama de Tempo de Leitura Diagrama de tempo para um ciclo de leitura completo para um chip RAM típico ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 21 Diagrama de Tempo de Leitura Diagrama de tempo para um ciclo de leitura completo para um chip RAM típico Tempo de acesso à RAM Memória habilita a saída Memória desabilitada e dados no barramento Memória aceita o endereço Início da leitura ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 22 Diagrama de Tempo de Escrita ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 23 Diagrama de Tempo de Escrita Tempo do ciclo de escrita Tempo de setup de endereço Tempo de holding de endereços Tempo de escrita Tempo de setup de dados Tempo de holding de dados ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 24 SRAM Comercial O CMOS MCM6264C de memória RAM de 8K x 8 é um tipo de CI de SRAM, com: Ciclo de leitura e escrita de 12 ns. Consumo de energia em standby de apenas 100 mW. ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 25 RAM DINÂMICA (DRAM) ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 26 RAM Dinâmica (DRAM) Armazena dados como cargas em capacitores Dados são gradualmente perdidos devido a descarga do capacitor. Necessárias recargas (refresh) nos dados periodicamente, através da recarga dos capacitores, normalmente a cada 2, 4, ou 8 ms. Capacidades muito maiores e consumo de energia muito menor Quando as considerações de projeto mais importantes são manter o tamanho, custo e consumo de energia baixos, as DRAMs se tornam a melhor escolha em memórias. ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 27 Estrutura e Operação da RAM Dinâmica (1) A arquitetura interna da RAM dinâmica pode ser visualizada como um matriz de células de um único bit: Arranjo de células em uma RAM dinâmica de 16K x 1, com 16.384 células no total. Memórias com palavras de 8 bits possuem registradores com 8 células endereçáveis na matriz ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 28 Arquitetura simplifica de uma DRAM típica Palavras maiores também podem ser obtidas com arranjo entre memórias de um único bit. ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 29 Célula de Memória Dinâmica Durante uma operação de escrita, as chaves SW1 e SW2 são fechadas. Durante uma operação de leitura, todas as chaves são fechadas, exceto SW1. Quando SW3 é fechada o valor do capacitor é comparado com Vref para avaliar como sendo 0 ou 1 Durante a operação de leitura também é feito o refresh da célula de memória por carga ou descarga ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 30 Multiplexação de Endereço Para reduzir a quantidade de pinos nas DRAM de alta capacidade os fabricantes utilizam a multiplexação de endereços Cada pino de entrada de endereço acomoda dois bits de endereço diferentes. ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 31 Entrada de Endereços (1) CPU gera o endereço completo e o coloca em linhas de endereço que compõe o barramento Duas etapas: Endereço de linha: RAS (row address setup) Endereço de coluna: CAS (column address setup) Tempo de setup de linha ELT013 - Eletrônica Digital II Tempo de setup de coluna Aula 5 - Dispositivos de Memória - Parte II 32 Entrada de Endereços (2) No endereçamento multiplexado, o endereço é aplicado em duas partes, o de linha e o de coluna: Conectado diretamente aos registradores de linha e coluna. O registrador de linha armazena a parte alta do endereço e o de coluna, a baixa. O strobe de endereço de linha (row address strobe, RAS) armazena os conteúdos das entradas de endereço no registro de endereço de linha. O strobe de endereço de coluna (column address strobe, CAS) armazena os conteúdos das entradas de endereço no registro de endereço de coluna. ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 33 Ciclos de Leitura da RAM dinâmica ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 34 Ciclos de Escrita da RAM dinâmica ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 35 Refresh da DRAM Quando uma operação de leitura é realizada em uma célula, todas as células na linha passam pelo processo de refresh. A lógica de controle de refresh é usada para garantir que cada linha seja reavivada dentro do tempo limite: No modo de rajada (burst refresh) a operação de memória normal é suspensa e cada linha passa pelo refresh em sucessão até que todas as linhas tenham passado pelo processo. No modo distribuído (distributed refresh), o refresh das linhas é intercalado com as operações normais da memória. ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 36 Refresh da DRAM O método mais comum é o refresh apenas como RAS : É realizado pulsando um endereço de linha com RAS enquanto o CAS e WE permanecem em ALTO. Um controlador de RAM dinâmica (DRAM) geralmente é usado para realizar multiplexação de endereço e geração de sequência de contagem de refresh. ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 37 TECNOLOGIAS DRAM ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 38 Tecnologias DRAM (1) Memórias para produção em grande escala são feitas com conectores de interfaces de memória padrão. Os conectores recebem uma pequena placa de circuito impresso com pontos de contato nos dois lados da borda, e permitem fácil instalação e substituição de componentes de memória. ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 39 Tecnologias DRAM (2) Módulos de memória: SIMM (single in-line memory module): placa de circuito com 72 contatos de funcionalidade equivalente nos dois lados. DIMM (dual-in-line memory module): de 168 a 240 pinos de funcionalidade única em cada lado. SODIMM (small-outline, dual-in-line memory module): para aplicações compactas, como laptops. RIMM (rambus in-line memory module): encapsulamento que carrega DRAM do tipo direct rambus (DRDRAM). ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 40 Tecnologias DRAM (3) FPM DRAM (fast page mode - FPM) : permite acesso mais rápido a localizações aleatórias de memória dentro da “página” corrente. Uma página é uma faixa de endereços de memória que possuem valores de bits mais altos idênticos. Apenas as linhas de endereço baixas tem de ser alteradas para acessar os dados. ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 41 Tecnologias DRAM (4) EDO DRAM (extended data output - EDO): oferece uma pequena melhoria em relação a FPM. Para acessos em uma dada página, o valor de dados na localização de dados atual é lido e travado nos pinos de saída. Enquanto esses dados estão presentes na saída, um novo endereço na página atual pode ser decodificado, e o circuito de roteamento de dados pode ser iniciado para o próximo acesso. Isso permite ao controlador de memória entregar o próximo endereço ao mesmo tempo que lê a palavra atual. ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 42 Tecnologias DRAM (5) SDRAM: A DRAM síncrona é projetada para transferir dados em rajadas rápidas de várias localizações sequenciais de memória. A primeira localização acessada é a mais lenta devido ao overhead (latência) de travamento de endereço de linha e coluna. A partir daí, os valores de memória são emitidos pelo sistema de barramento. SDRAMs são organizadas em dois (ou mais) bancos: Permitem taxas altas de leitura dos dados por acessar alternadamente os dois bancos. O Modo de auto-refresh permite ao dispositivo de memória executar todas as funções necessárias para realizar o refresh de suas células . ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 43 Tecnologias DRAM (6) DDRSDRAM (double data rate SDRAM): refere-se à interface dos módulos de memória ao barramento do PC. Alcança taxas de dados mais altas por transferi-los na subida e na descida do clock do sistema, até duas vezes mais rápidas do que os CIs SDRAM. Taxas de transferência em rajada DDR2 usa técnicas de buffer para produzir taxas quatro vezes mais rápidas que SDRAMs. DDR3 transfere dados oito vezes mais rápido. Aumentar a velocidade do clock do sistema oferece ganhos mínimos na performance, considerando-se que a latência da SDRAM é o principal fator limitante da velocidade máxima. ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 44 Outras Tecnologias de Memória (1) Armazenamento magnético: O primeiro método de armazenamento magnético de informação digital envolvia rolos de fita magnética para armazenamento e recuperação a longo prazo de programas e dados. O avanço seguinte envolvia revestir discos rígidos (hard disks) com mídia magnética e rotacioná-los enquanto uma cabeça magnética de leitura e gravação movia-se radialmente ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 45 Outras Tecnologias de Memória (2) Armazenamento magnético não volátil: de alta velocidade e acesso aleatório também foi usado nos primórdios da computação com tecnologia de núcleos magnéticos (magnetic core): Linhas e colunas de pequenos eletroimãs podiam ser polarizados em qualquer direção. Essa tecnologia básica foi trazida de volta recentemente na forma de memórias de acesso aleatório magnetoresistentes (magnetoresistive random access memory, MRAM). ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 46 Outras Tecnologias de Memória (3) Discos óticos têm uma tecnologia de armazenamento de memória digital muito significativa: Discos compactos de áudio digital (CDs) tornaram-se disponíveis no começo dos anos 1980, e posteriormente vieram os Vídeos Digitais (DVDs) e os discos Blu-Ray (BDs). Todos os formatos de armazenamento ótico usam essencialmente a mesma tecnologia, diferenciando-se principalmente no formato e na densidade. ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 47 ASSOCIAÇÃO DE MEMÓRIAS ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 48 Expansão do tamanho da palavra ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 49 Associação de Memórias (1) Em várias aplicações, a capacidade de memória RAM ou ROM ou o tamanho da palavra não pode ser alcançado por um único chip de memória. Vários chips devem ser combinados para prover a capacidade e/ou o tamanho de palavra. Essa combinação de dois chips de RAM age como uma única memória 16 x 8 e é chamado de módulo de memória 16 x 8. ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 50 Associação de Memórias (2) Deve ser observado que as linhas de controle devem estar associadas de forma a controlar os CIs de memória simultaneamente ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 51 Exemplo 1 O CI2125A é uma RAM estática com capacidade de 1K x 1, entrada de seleção do chip ativa em nível BAIXO e entradas e saídas de dados separadas. Como combinamos diversos CI2125A para formar um módulo de 1K x 8? ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 52 Exemplo 2 Oito CIs 2125A 1K x 1 organizados como uma memória 1K x 8: ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 53 Expansão da capacidade ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 54 Exemplo 3 Armazenar 32 palavras de 4 bits possuindo CIs de 16 x 4? A4 como CS ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 55 Exemplo 4 Combinar PROMs de 2K x 8 para produzir uma capacidade de 8K x 8. Quantos CIs PROM são necessários? R: 4 Quantas linhas no barramento de endereços? 8K = 8 * 210 = 23 * 210 = 213 R: 13 linhas de endereço ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 56 Linhas de endereço de A10...A0 são utilizadas para selecionar uma posição de memória dentro dos CIs PROM ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 57 Linhas de endereço de A13 A12 A11 são utilizadas para selecionar QUAL CI será ativado. O saída do decodificador está conectada às entradas CS do CIs PROM. ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 58 Linhas de endereço de A15...A14 pertencem ao barramento do sistema e são utilizadas para habilitar ou não o decodificador de endereços. Neste caso a decodificação acontece apenas para endeços 400016 ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 59 Decodificação Parcial de Endereço A decodificação incompleta de endereço é útil quando dispositivos de memória diferentes são usados no mesmo sistema Vários tipos diferentes de memórias podem compartilhar os mesmos barramentos ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 60 ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 61 Linhas de endereço de A15...A13 pertencem ao barramento do sistema e são utilizadas para habilitar qual memória será acessada. Linhas A12...A0 são utilizadas para endereçar os 8K de diferentes endereços. ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 62 ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 63 Combinando CIs DRAM CIs DRAM com tamanho de palavra de 1-4 bits têm de ser combinados para formar módulos com tamanho de palavra maior ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 64 EXERCÍCIOS PROPOSTOS ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 65 Exercícios Propostos Seção 12.19 Seção 12.12 Seção 12.13 a 12.17 Seção 12.4 a 12.8 ELT013 - Eletrônica Digital II Aula 5 - Dispositivos de Memória - Parte II 66