Baixe o app para aproveitar ainda mais
Prévia do material em texto
Powered by Enderson Neves Cruz Curso Técnico de Eletrônica Sistemas Microprocessados Enderson Neves Cruz enderson@deii.cefetmg.br enderson.bh@gmail.com 2011 Powered by Enderson Neves Cruz 2 Cronograma Aula Assunto Aula 01 07/02/2011 Apresentação da disciplina Aula 02 14/02/2011 Evolução histórica e conceitos básicos Aula 03 21/02/2011 Sistemas Microcontrolados - Estruturas básicas Aula 04 28/02/2011 Sistemas Microcontrolados - CPU 07/03/2011 Recesso: Carnaval Aula 05 14/03/2011 Sistemas Microcontrolados - Memórias Aula 06 21/03/2011 Sistemas Microcontrolados - Memórias Aula 07 28/03/2011 Sistemas Microcontrolados - Arquiteturas Aula 08 04/04/2011 Sistemas Microcontrolados - Periféricos Aula 09 11/04/2011 Sistemas Microcontrolados - Características dos microcontroladores Trabalho 1 18/04/2011 Apresentação Trabalho em Grupo e Trabalho Individual 1 Prova 1 25/04/2011 Prova bimestral 1 e e Trabalho Individual 1 Aula 12 02/05/2011 MSP430 - Arquitetura geral Aula 13 09/05/2011 MSP430 - Modos de endereçamento Aula 14 16/05/2011 MSP430 - Conjunto de instruções Aula 15 23/05/2011 MSP430 - Interrupções Aula 16 30/05/2011 MSP430 - Interrupções Aula 17 06/06/2011 MSP430 - Sistemas de Reset Aula 18 13/06/2011 MSP430 - Módulo oscilador Aula 19 20/06/2011 MSP430 - Módulo oscilador Trabalho 2 27/06/2011 Apresentação Trabalho em Grupo e Trabalho Individual 2 Prova 2 04/07/2011 Avaliação Somativa 1 1º Semestre Data Aula Data Assunto Aula 25 01/08/2011 MSP430 - Portas de E/S Aula 26 08/08/2011 MSP430 - Portas de E/S 15/08/2011 Feriado: Assunção de Nossa Senhora. Aula 28 22/08/2011 MSP430 - Portas de E/S Aula 29 29/08/2011 MSP430 - Portas de E/S - Teclado e LCD Aula 30 05/09/2011 MSP430 - Timers Aula 31 12/09/2011 MSP430 - Timers Trabalho 3 19/09/2011 Apresentação Trabalho em Grupo e Trabalho Individual 3 Prova 3 26/09/2011 Prova bimestral 3 e e Trabalho Individual 3 Aula 34 03/10/2011 MSP430 - Timers Aula 35 10/10/2011 Recesso: Nossa Senhora Aparecida 17/10/2011 VIII Semana Ciência & Tecnologia Aula 37 24/10/2011 MSP430 - Conversor A/D Aula 38 31/10/2011 MSP430 - Conversor A/D Aula 39 07/11/2011 MSP430 - USART 14/11/2011 Recesso: Proclamação da República Aula 41 21/11/2011 Técnicas de projetos com microcontroladores Trabalho 4 28/11/2011 Apresentação - Trabalho em Grupo Prova 4 05/12/2011 Avaliação Somativa 2 2º Semestre 2 Powered by Enderson Neves Cruz 3 Avaliação • Trabalho em Grupo (Projeto) = 40% – Tema deve ser previamente discutido com o professor – Deve ser apresentado na aula anterior a prova • Lista de exercícios = 20% (Individual) – Exercícios da apostila teórica relativos a matéria da prova 1 – Deve ser entregue na data de apresentação do trabalho em grupo • Prova = 40% 3 Powered by Enderson Neves Cruz 4 Avaliação Trabalho em Grupo = 40% (Grupo) – 20 minutos de apresentação + Relatório – Descrição do funcionamento – Diagrama em blocos – Características e especificações – Principais tecnologias utilizadas e seu funcionamento básico – Comparativo entre modelos – Conclusão – Referências bibliográficas Sugestões de temas – 1º Bimestre – Smartphone (Iphone 4, Galaxy, etc.) – Console de jogos que reproduz o movimento dos jogadores (Wii, Kinect, Move, etc.) – Tablets (Ipad, Galaxy Tab, etc.) – Televisores 3D – Veículos auto-guiados – Robôs humanóides – Casas inteligentes 4 Powered by Enderson Neves Cruz 5 Avaliação Projeto = 40% (Grupo) – Descrição do funcionamento – Diagrama em blocos – Recursos a serem utilizados – Fluxograma – Programa – Simulação – Circuitos – Custo do projeto – Previsão de possíveis problemas. – Montagem – Testes – Conclusão Concepção Pesquisa Grau de dificuldade Descrição do projeto Hardware Software Estrutura da Montagem Funcionamento Geral Conhecimento geral do grupo Autoavaliação do grupo Descrição do funcionamento Diagrama em blocos Recursos a serem utilizados Fluxograma Programa Simulação Circuitos Custo do projeto Previsão de possíveis problemas Montagem Testes Conclusão Referências Bibliográficas Apresentação Critérios de avaliação Relatório Projeto Apresentação 5 Powered by Enderson Neves Cruz Referências • SCHETTINO, John Kennedy S. Sistemas Microprocessados II. Belo Horizonte. CEFET-MG, 2005. 138p. • MONTEIRO, Mário. Introdução à Organização de Computadores. LTC, 1996. 3ª Edição. 500p. • TANENBAUM, Andrew S. Organização Estruturada de Computadores. Prentice/Hall do Brasil, 1992. 5ª Edição. 464p. • PEREIRA, Fabio. Microcontroladores MSP430 - Teoria e Prática. São Paulo Editora Érica, 2006. 416p. • Davies, John H. MSP430 Microcontroller Basics Newnes, 2008. 685p. • Notas de aula Técnicas Avançadas em Microprocessadores MSP430 – Texas Prof. Otacílio da Mota Almeida, Universidade Federal do Ceará, 2009 • Texas Instruments. MSP430x1xx Family: User´s Guide 2006 414p. • Texas Instruments. MSP430x1xx Family: User´s Guide 2006 414p. • Texas Instruments. MSP430 Teaching ROM. • Site da Texas Instruments http://focus.ti.com/mcu/docs/mcuprodoverview.tsp?sectionId=95&tabId=140&familyId=342 • Site MSP430 Web http://msp430.techcontent.net/ 6 Powered by Enderson Neves Cruz Módulo 1 Introdução a Sistemas Microprocessados Powered by Enderson Neves Cruz Aula 01 – Computadores Evolução histórica e conceitos básicos Processamento de Dados • Série de atividades realizadas para produzir um conjunto de informações a partir de outras informações iniciais (dados). Computador • Equipamento de processamento eletrônico de dados Processamento InformaçõesDados Informação Dados + Conhecimento 8 Powered by Enderson Neves Cruz Aula 01 – Computadores Evolução histórica e conceitos básicos Analogia com o ser humano Melhor dispositivo para se processar informações, ou quase! Neurônios Cérebro Processa Voz e movimentos Saídas Sentidos Entrada Memória Nervos Nervos Nervos Input OutputCPU Memória CPU – Central Processing Unit (Unidade central de processamento) Dispositivos de I/O - Input/Output (Entrada/Saída) 9 Powered by Enderson Neves Cruz Aula 01 – Sistemas Microcontrolados Evolução histórica e conceitos básicos Memória Dispositivos I/O Barramento de Endereços Barramento de Dados Barramento de Controle CPU Clock 10 Powered by Enderson Neves Cruz Aula 01 – Computadores Evolução histórica e conceitos básicos Gerações de computadores • Geração 0 – Computadores Mecânicos (Anterior a 1945) • 1ª Geração – Válvulas (1945 à 1955) • 2ª Geração – Transistores (1955 à 1965) • 3ª Geração – Circuitos Integrados (1965 à 1980) • 4ª Geração – VLSI (1980 aos dias atuais) • 5ª Geração – Conectividade, mobilidade, computadores “inteligentes” 11 Powered by Enderson Neves Cruz Aula 01 – Computadores Evolução histórica e conceitos básicos Geração 0 – Computadores Mecânicos (Anterior a 1945) 2400 a.C Ábaco Mesopotâmia China Sec. IX Algoritmos (1592-1635) Primeira máquina de calcular Wilhelm Schickard 1642 Primeira máquina de calcular Blaise Pascal 1672 Máquina de calcular com 4 operações Gottfried W. Leibniz 1703 Lógica Formal e matemática Gottfried W. Leibniz 1854 Álgebra Booleana George Boole Sec. III a.C Sistema binário Pingala Índia Máquina de calcular Wilhelm Schickard Ábaco Pascaline Blaise Pascal Máquina de calcular Gottfried W. Leibniz 12 Powered by Enderson Neves Cruz Aula 01 – Computadores Evolução histórica e conceitos básicos Geração 0 – Computadores Mecânicos (Anterior a 1945) 1801 Tear mecânico com cartões perfurados Joseph Marie Jacquard 18901911 Fundação da Tabulating Machine Company (TMC) Herman Hollerith 1924 IBM - International Business Machines Thomas J. Watson 1936 Z-1 Primeiro computador a relés Konrad Zuze 1944 MARK I USA 1834 Máquina Analítica Charles Babbage Ada Augusta Lovelace Máquina de tabulação Herman Hollerith Máquina de Turing Alan Turing 1904 Válvula John Ambrose Fleming Tear mecânico com cartões Joseph Marie Jacquard Máquina Analítica Charles Babbage Máquina de tabulação Herman Hollerith Mark I 13 Powered by Enderson Neves Cruz Aula 01 – Computadores Evolução histórica e conceitos básicos 1ª Geração – Válvulas (1945 à 1955) 1943 Colossus Inglaterra 1947 1948 1951 Whirlwind I Primeiro computador de tempo-real MIT 1946 ENIAC Electronic Numerical Integrator and Computer John Presper Eckert e John Mauchly EUA Transistor John Bardeen Walter Brattain William Shockley Bell Labs 1952 IAS Machine John von Neumann Princeton - EUA Teoria da informação Claude Shannon UNIVAC J. Presper Ecker John Mauchly 1953 IBM 701 Primeiro computador comercial IBM ENIAC IBM 701 Transistor 14 Powered by Enderson Neves Cruz Aula 01 – Computadores Evolução histórica e conceitos básicos 2ª Geração – Transistores (1955 à 1965) 1960 PDP-I DEC 1956 TX-0 Primeiro Computador Transistorizado MIT EUA 1957 Fundação da Digital Computer Corporation (DEC) Ken Olsen 1958 Circuito Integrado Jack Kilby (Texas) Robert Noyce (Fairchild) 1964 Supercomputador CDC 6600 Seymour Cray CDC FORTRAN John W. Backus IBM COBOLPentágono Fabricantes BASIC Thomas Kurtz John Kemeny 1962 Jogo SpaceWar Slug Russel Shag Graetz Alan Kotok MIT 1961 1401 IBM Circuito Integrado CDC 6600 PDP-1 DEC TX-0 MIT 15 Powered by Enderson Neves Cruz Aula 01 – Computadores Evolução histórica e conceitos básicos 3ª Geração – Circuitos Integrados (1965 à 1980) 1966 HP-2115 Hewlett-Packard 1972 Linguagem C Ken Thompson Denis Richie Bell Labs Disco IBM RAMAC IBM LOGO Seymour Papert 1971 Kenbak-1 Primeiro computador pessoal 1965 Minicomputador PDP-8 DEC System/360 IBM 1968 Fundação da Intel Corporation Gordon E. Moore Robert Noyce 1967 1969 ARPANET USA ARMY UNIX Ken Thompson Denis Richie Bell Labs Microprocessador Intel 4004 Intel Fundação da Atari Nolan Bushnell System/360 IBM 1970 PASCAL Niklaus Wirth 16 Powered by Enderson Neves Cruz Apple II Evolução histórica e conceitos básicos 3ª Geração – Circuitos Integrados (1965 à 1980) 1977 Aula 01 – Computadores 1975 Microcomputador pessoal Altair 8800 Kit de montar MITS 19801979 VisiCalc Planilha Daniel Bricklin Robert Frankston Harvard 1973 Ethernet Robert Metcalfe Xerox 1976 1978 Microprocessador Intel 8088 Hard Disk Seagate Microcomputador pessoal Apple I Steve Jobs Steve Wozniak Apple Microcomputador pessoal Apple II Steve Jobs Steve Wozniak Apple Microprocessador Zilog Z80 17 Powered by Enderson Neves Cruz Evolução histórica e conceitos básicos 4ª Geração – VLSI (1980 aos dias atuais) 1985 Aula 01 – Computadores 1983 Lotus 1-2-3 Mitch Kapor 19881987 Microcomputador PS/2 IBM 1981 1984 1986 Microcomputador Deskpro 386 Compaq Microprocessador Intel 80386 Macintosh MAC OS Apple IBM PC-AT IBM INTERNET CD-ROM Microcomputador pessoal IBM PC IBM MS-DOS Microsoft Linguagem C++ Bjarne Stroustrup Microprocessador Intel 80486 IBM PC Apple Macintosh 18 Powered by Enderson Neves Cruz Evolução histórica e conceitos básicos 4ª Geração – VLSI (1980 aos dias atuais) 1994 Aula 01 – Computadores 1991 Power PC Apple IBM Motorola 19991998 Google Larry Page Sergey Brin Pentium II Intel iMAC Apple Windows 98 Microsoft 1990 1993 1995 Windows 95 Microsoft Java Sun Microsystems Toy Story Pixar PlayStation Sony Microprocessador Pentium Intel Windows 3.0 Microsoft Netscape Marc Andreesen Jim Clark LINUX Linus Torvalds HTML WWW Tim Berners-Lee PDA Newton Apple 19 Powered by Enderson Neves Cruz Evolução histórica e conceitos básicos 4ª Geração – VLSI (1980 aos dias atuais) 2007 Aula 01 – Computadores 2001 20102009 Windows 7 Microsoft 2000 2006 2008 Android Google Core i7 Intel Core 2 Duo Intel iPhone Apple Wii Nintendo Tablet iPad Apple Microprocessador Pentium III Intel Bug do Milênio iPod Apple MAC OS X Apple Windows XP Microsoft iPod Apple iPhone Apple iPad Apple 20 Powered by Enderson Neves Cruz Aula 01 – Computadores Estrutura básica de um sistema microcontrolado Modelo de John von Neumann Memória Dispositivos I/O Barramento de Endereços Barramento de Dados Barramento de Controle CPU Clock � CPU (Unidade central de processamento): Processa as informações, executando as instruções armazenadas na memória e realizando as operações lógicas e aritméticas. � Memória. Armazena as instruções e os dados a serem executadas pela CPU • Dispositivos I/O (Dispositivos de entrada e saída): Para fazer comunicação digital com o mundo exterior. • Barramento de dados: Por onde trafegam as informações (dados) a serem processadas. • Barramento de endereços: Indica a posição de memória onde uma informação (dado) será escrita ou lida e pela seleção do dispositivo que terá acesso ao barramento de dados. • Barramentos de controle: Indica o tipo da operação (leitura ou escrita) e onde a operação está sendo realizada (memória ou dispositivo de I/O). • Clock: Para manter todo o sistema sincronizado. 21 Powered by Enderson Neves Cruz Aula 01 – Computadores Arquitetura típica de um microcomputador típico e suas Interfaces Barramento de Endereços Barramento de Dados Interface com os dispositivos de interação com o usuário Interface com os dispositivos de armazenamento em massa Interface com os dispositivos de controle e sensoramento Barramento de Controle MemóriaMicroprocessador Barramento de Endereços Barramento de Dados Interface com os dispositivos de interação com o usuário Interface com os dispositivos de interação com o usuário Interface com os dispositivos de armazenamento em massa Interface com os dispositivos de armazenamento em massa Interface com os dispositivos de controle e sensoramento Interface com os dispositivos de controle e sensoramento Barramento de Controle MemóriaMemóriaMicroprocessadorMicroprocessador 22 Powered by Enderson Neves Cruz Aula 01 – Computadores Acessando os dados Escrita de um dado no endereço de memória ou I/O Barramento de Endereços Barramento de Controle CPU Memória I/O Barramento de Dados Endereço Conteúdo 0000 20 0001 37 1000 CC 1001 15 1002 AC XXXX F2 Endereço Conteúdo 0000 20 0001 37 03F8 AC YYYY F2 Barramento de Endereços Barramento de Controle CPU Memória I/O Barramento de Dados Endereço Conteúdo 0000 20 0001 37 1000 CC 1001 15 1002 AC XXXX F2 Endereço Conteúdo 0000 20 0001 37 03F8 AC YYYY F2 Colocar o endereço desejado(por exemplo, 0000H) no barramento de endereço, colocar o dado desejado no barramento de dados e em seguida habilitar para escrita o bloco de memória ou I/O, indicando onde deverá ser realizada a operação. 23 Powered by Enderson Neves Cruz Aula 01 – Computadores Acessando os dados Leitura de um dado no endereço de memória ou I/O Barramento de EndereçosBarramento de Controle CPU Memória I/O Barramento de Dados Endereço Conteúdo 0000 20 0001 37 1000 CC 1001 15 1002 AC XXXX F2 Endereço Conteúdo 0000 20 0001 37 03F8 AC YYYY F2 Barramento de Endereços Barramento de Controle CPU Memória I/O Barramento de Dados Endereço Conteúdo 0000 20 0001 37 1000 CC 1001 15 1002 AC XXXX F2 Endereço Conteúdo 0000 20 0001 37 03F8 AC YYYY F2 Colocar o endereço desejado(por exemplo, 1002H) no barramento de endereço, e em seguida habilitar para leitura o bloco de memória ou I/O, indicando onde deverá ser realizada a operação. o dado desejado será disponibilizado no barramento de dados 24 Powered by Enderson Neves Cruz Aula 01 – Computadores Evolução histórica e conceitos básicos Conceitos Hardware É a parte física do computador, ou seja, é o conjunto de componentes eletrônicos, circuitos integrados e placas, que se comunicam através de barramentos. Software É a parte lógica, ou seja, o conjunto de instruções e dados processados pelo circuitos eletrônicos que compõe o hardware. 25 Powered by Enderson Neves Cruz Aula 01 – Computadores Evolução histórica e conceitos básicos Máquina Multinível Contemporânea (Camadas) Dispositivos Físicos Dispositivos Físicos • Componentes elétricos/eletrônicos básicos que permitem a construção dos circuitos - Circuitos integrados - Transistores - Fios - Capacitores - Resistores - etc. 26 Powered by Enderson Neves Cruz Aula 01 – Computadores Evolução histórica e conceitos básicos Máquina Multinível Contemporânea (Camadas) Dispositivos Físicos Micro Arquitetura Micro Arquitetura • Dispositivos físicos agrupados para formar unidades funcionais como, etc. - Memórias - Registradores - ULA (Unidade Lógica Aritmética) - etc. 27 Powered by Enderson Neves Cruz Aula 01 – Computadores Evolução histórica e conceitos básicos Máquina Multinível Contemporânea (Camadas) Dispositivos Físicos Micro Arquitetura Linguagem de Máquina Linguagem de Máquina • Conjunto de instruções interpretadas pelos dispositivos que compõem a micro arquitetura. • Toda fabricante publica um manual onde descreve o conjunto das instruções de máquina (ISA) • ISA – Instruction Set Architecture • Assembly é o termo utilizado para linguagem de máquina ou linguagem de montagem. 28 Powered by Enderson Neves Cruz Aula 01 – Computadores Evolução histórica e conceitos básicos Máquina Multinível Contemporânea (Camadas) Dispositivos Físicos Micro Arquitetura Linguagem de Máquina Sistema Operacional Sistema Operacional (SO) • Responsável por gerenciar os dispositivos de hardware do computador (como memória, unidade de disco rígido, unidade de CD) e realizar a interação entre o usuário e esses dispositivos. • Oferecer o suporte para os outros programas funcionarem (como Word, Excel etc.). • Exemplos: UNIX, LINUX, Windows, Mac OS, iPhone OS, Android, etc. 29 Powered by Enderson Neves Cruz Aula 01 – Computadores Evolução histórica e conceitos básicos Máquina Multinível Contemporânea (Camadas) Dispositivos Físicos Micro Arquitetura Linguagem de Máquina Sistema Operacional Compiladores e Interpretadores Compiladores e Interpretadores • Programas que traduzem o código de fonte de uma linguagem de programação de alto nível para uma linguagem de programação de baixo nível (por exemplo: assembly) • Exemplos: Borland C++, Microsoft Visual Basic, etc. 30 Powered by Enderson Neves Cruz Aula 01 – Computadores Evolução histórica e conceitos básicos Máquina Multinível Contemporânea (Camadas) Dispositivos Físicos Micro Arquitetura Linguagem de Máquina Sistema Operacional Compiladores e Interpretadores Aplicativos Aplicativos • Um programa de computador que permite ao usuário fazer uma ou mais tarefas específicas. • Tem por objetivo o desempenho de tarefas, em geral ligadas ao processamento de dados, como o trabalho em escritório ou empresarial, lazer etc. - Editores de texto, planilhas eletrônicas - Tratamento de imagens - Navegadores de internet - Bancos de dados - Jogos 31 Powered by Enderson Neves Cruz Aula 01 – Computadores Evolução histórica e conceitos básicos Máquina Multinível Contemporânea (Camadas) Dispositivos Físicos Micro Arquitetura Linguagem de Máquina Sistema Operacional Compiladores e Interpretadores Aplicativos Software Hardware 32 Powered by Enderson Neves Cruz Aula 01 – Computadores Evolução histórica e conceitos básicos Máquina Multinível Contemporânea (Camadas) Nível de Lógica Digital Nível de Microarquitetura Nível de Arquitetura de Conjunto de Instruções (ISA) Nível de Máquina de Sistema Operacional Nível de Linguagem de Montagem (Assembly) Nível de Linguagem Orientada a Problemas Nível 0 Nível 1 Nível 2 Nível 3 Nível 4 Nível 5 Tradução (compilador) Tradução (montador ou assembler) Interpretação parcial (sistema operacional) Interpretação (microprograma) ou execução direta Hardware (Portas lógicas) (Memória, registradores e ALU) (Instruções em linguagem de máquina) (Híbrida – Instruções ISA ou SO) (Mnemônicos para as Instruções em linguagem de máquina) (Linguagens de alto nível: C, C++, Java, Visual Basic...) 33 Powered by Enderson Neves Cruz Aula 02 – Memórias Introdução Barramento de Endereços Barramento de Dados Memória Auxiliar Armazenamento de massa Barramento de Controle Microprocessador Barramento de Endereços Barramento de Dados Barramento de Controle Memória PrincipalMicroprocessadorMicroprocessador Dispositivos I/O Memórias São dispositivos que armazenam informações codificadas digitalmente que podem representar números, caracteres, instruções, endereços ou qualquer outro tipo de dado. 34 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória Principal e Memória Auxiliar Memória Principal Semicondutora • Também chamada Memória de trabalho • Está em constante comunicação com a CPU, pois armazena as instruções e dados que a CPU está utilizando no momento • Um programa permanece na memória principal enquanto está sendo executado, assim como os dados por ele utilizados. • É formada pelas memórias RAM e ROM. • Necessita ser muito rápida, por isso é sempre uma memória semicondutora. Memória Auxiliar Armazenamento de massa • Armazena grandes quantidades de dados • É uma memória não-volátil. • Podem ser magnéticas (Hard Disk, Floppy Disk, etc.), óticas (CDs, DVDs, etc.) e semicondutoras. • É mais lentas que a memória principal. As memórias chamadas voláteis perdem os dados quando o sistema é desligado. Existem diversos tipos de memória volátil, divididas em grupos (famílias) podendo ser RAM, SAM etc. As memórias chamadas não voláteis não perdem os dados quando o sistema é desligado. As ROMs são exemplos de memórias não voláteis. NÃO SALVEI !!! ... 35 Powered by Enderson Neves Cruz Aula 02 – Memórias Terminologia • Célula de memória – Dispositivo ou circuito usado para armazenar um único bit (0 ou 1).Exemplos: Flip-flop, capacitor, ponto magnético em um disco magnético, ponto ótico em um disco ótico. • Palavra de Memória – Grupo de células (bits) em memória que representa instruções ou dados. O tamanho estão na faixa de 4 a 64 bits, dependendo do tamanho do computador. • Byte (Binary Term) – Palavra de 8 bits. Atualmente é o tamanho da palavra de memória na maioria dos computadores. • Endereço (Posição) de memória – Número que identifica a posição de uma palavra na memória. Cada palavra armazenada na memória possui um endereço único. Atualmente é comum utilizar a notação hexadecimal pararepresentar o endereço de um palavra na memória. • Operação de Leitura (Read) ou Busca – Operação na qual uma palavra binária armazenada em uma determinada posição (endereço) de memória é transferida para outro dispositivo. • Operação de Escrita (Write) ou Armazenamento – Operação na qual uma nova palavra binária é armazenada em uma determinada posição (endereço) de memória, substituindo a palavra lá armazenada. • Tempo de acesso (Access Time) – É o tempo necessário para realizar uma operação de leitura em uma memória, ou seja, é o tempo entre a memória receber uma nova entrada de endereço e os dados estarem disponíveis na saída da memória. Indica a velocidade de um dispositivo de memória 0000 (0x0 ou 0h) 0 1 0 1 0001 (0x1 ou 1h) 1 0 1 1 0010 (0x2 ou 2h) 1 1 1 1 011 (0x3 ou 3h) 0 1 1 1 100 (0x4 ou 4h) 0 0 0 1 101 (0x5 ou 5h) 1 0 0 1 110 (0x6 ou 6h) 1 0 1 1 111 (0x7 ou 7h) 0 0 0 0 Células de memória Palavra de Memória E n d e r e ç o s 36 Powered by Enderson Neves Cruz Aula 02 – Memórias Terminologia • Capacidade ou Densidade – Quantidade de bits que podem ser armazenados na memória. T = N x M T é a capacidade da memória em bits N é o número de endereços ( onde, N = 2x sendo x o número de bits de endereço) M é o número de bits de cada endereço (posição) de memória (palavra). N x M 2048 x 8 2K x 8 T = 2048 x 8 = 16.834 bits 5120 x 2 5K x 2 T = 5120 x 2 = 10.240 bits Qual tem a maior capacidade? • A capacidade pode ser medida em unidades de bytes (kB, MB, GB, TB, etc.). Neste caso considera-se como um byte o número de bits em cada endereço. Por exemplo: 4GB = 4G x 8 = 4 x 230 x 8 = 4 x 1.073.741.824 x 8 = 34.359.738.368 37 Powered by Enderson Neves Cruz Aula 02 – Memórias Princípios de operação Entrada de endereços (Adress) Utilizadas para acessar uma das posições de memória para uma operação de escrita ou leitura, o código de endereçamento para a posição desejada deve ser aplicado as entradas de endereço. São necessárias N entradas de endereço para uma memória com 2N posições de memória. Habilitação da memória Quando esta entrada está desativada, a memória fica desabilitada e ela não responderá as entradas de endereço e de escrita/leitura. ME – Memory Enable CS – Chip Select CE – Chip Enable Entrada R/W Esta entrada controla qual operação será realizada na memória: Nível Alto (1) � Leitura (Read) Nível baixo (0) � Escrita (Write) Outros identificadores: W ou WE Entradas de dados (Inputs) Os dados a serem armazenados em uma determinada posição de memória devem ser aplicados nas linhas das entradas de dados durante o processo de escrita (Write). Saídas de dados (Outputs) Durante o processo de leitura (Read), a palavra lida de um determinado endereço de memória aparece nas linhas de saídas de dados. 38 Powered by Enderson Neves Cruz 00000 0 1 1 0 00001 1 1 0 0 00010 1 0 1 1 00011 0 0 0 1 00100 0 1 1 0 00101 0 0 1 0 00110 1 0 1 0 11110 1 0 0 0 11111 0 1 1 1 00000 0 1 1 0 00001 1 1 0 0 00010 1 0 1 1 00011 0 0 0 1 00100 0 1 1 0 00101 0 1 1 0 00110 1 0 1 0 11110 1 0 0 0 11111 0 1 1 1 Aula 02 – Memórias Operação de Escrita (Write) Operação de escrita (Write) 1. Selecionar o endereço onde o dado (palavra) será armazenado, através das linhas das entradas de endereço. 2. Selecionar a entrada R/W para a operação de escrita, colocando-a no nível lógico 0 (baixo). 3. Fornecer os dados (palavra) a serem armazenados colocando-os nas linhas de entrada de dados. 4. Habilitar a memória, ativando a entrada ME, de forma a fazê-la responder ao endereço na entrada e ao comando de escrita, armazenando assim o dado no endereço desejado. 5. Manter os dados a serem armazenados e os sinais ativos durante o tempo necessário para a efetivação do processo de escrita. Exemplo Escrever a palavra 0110 na posição 0x05 (00101). 0 0 1 0 1 0 1 0 1 1 0 39 Powered by Enderson Neves Cruz 00000 0 1 1 0 00001 1 1 0 0 00010 1 0 1 1 00011 0 0 0 1 00100 0 1 1 0 00101 0 0 1 0 00110 1 0 1 0 11110 1 0 0 0 11111 0 1 1 1 00000 0 1 1 0 00001 1 1 0 0 00010 1 0 1 1 00011 0 0 0 1 00100 0 1 1 0 00101 0 0 1 0 00110 1 0 1 0 11110 1 0 0 0 11111 0 1 1 1 Aula 02 – Memórias Operação de Escrita (Write) Exemplo Ler a palavra armazenada na posição 0x31 (11110). 1 1 1 1 0 1 1 1 0 0 0 Operação de Leitura (Read) 1. Selecionar o endereço onde o dado (palavra) está armazenado, através das linhas das entradas de endereço. 2. Selecionar a entrada R/W para a operação de leitura, colocando-a no nível lógico 1 (alto). 3. Habilitar a memória, ativando a entrada ME, de forma a fazê-la responder ao endereço na entrada e ao comando de leitura, lendo assim o dado no endereço desejado. 4. Os dados (palavra) armazenados apareceram nas linhas de saída de dados. 40 Powered by Enderson Neves Cruz Memória de acesso aleatório (Memória de Leitura/Escrita) RAM - Random Access Memory Memória somente de leitura ROM - Read-Only Memory Aula 02 – Memórias Tipos de memória ROM Read-Only Memory Dados gravados na fábrica PROM Programmable Read-Only Memory Programável somente uma vez EPROM Erasable Programmable Read-Only Memory Regravável, apaga-se com ultravioleta EEPROM Electrically-Erasable Programmable Read-Only Memory Regravável, apaga-se eletricamente FLASH Tipo especial de memória EEPROM Regravável, apaga-se eletricamente DRAM Dynamic Random Access Memory Necessita de atualização frequente de suas informações. SRAM Static Random Access Memory Não necessita de atualização da informação gravada. 41 Powered by Enderson Neves Cruz Aula 02 – Memórias Classificação As memórias podem ser classificadas de diversas formas. Acesso aos Endereços Método de acessar as posições de memória. Sequencial SAM Fitas magnéticas Aleatório RAM ROM Flash Discos Magnéticos Discos óticos Volatilidade Perder os dados quando a energia é desligada. Volátil RAM SAM Não volátil ROM Flash Discos Magnéticos Discos óticos Acesso aos Dados Método de acessar os dados na memória. Somente Leitura ROM Discos óticos ROM Leitura/Escrita (R/W) RAM Flash Discos Magnéticos Discos óticos RW 42 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória ROM • ROM – Read Only Memory � Memória Somente de Leitura • É uma memória não-volátil. • O processo de inclusão da memória ROM é chamado programação ou queima. • Este tipo de memória ROM é chamado ROM programada por máscara (MROM), pois um negativo fotográfico, denominado máscara é usado para especificar as conexões elétricas do chip. • A programação da ROM ocorre durante o processo de fabricação de acordo com as especificações do cliente. • Somente utilizadas em aplicações de grande volume, para redução de custos ROM M x N Saída de dados On........O0 Entrada de endereços An........A0 Entrada de controle CS 43 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória ROM Exemplo – Memória ROM 16 x 8 44 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória ROM Arquitetura interna • Utliza-se normalmente diodos, transistores bipolares ou MOSFETs (consumo menor) como células de memória de uma ROM. • A Entrada de controle (CS ou EM) éresponsável também por realizar o Power down, ou seja, colocar o chip em stand by (espera) de forma a reduzir o consumo de energia. Decodificador de endereços Buffers de saída Matriz de registradores Células de memória CS O0 O1 O2 On . . . A0 A1 A2 An . . . Entrada de controle 45 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória ROMArquitetura interna • Exemplo de uma memória ROM 2 x 8 a diodos Endereço Dados A1 A0 D7 D6 D5 D4 D3 D2 D1 D0 Endereço Dados A1 A0 D7 D6 D5 D4 D3 D2 D1 D0 0 0 0 0 0 1 1 1 1 0 0 1 1 0 0 0 1 0 1 0 1 0 0 0 0 0 1 1 0 1 1 1 0 1 1 1 0 1 1 0 Endereço Dados A1 A0 D7 - D0 0h 1E 1h 8A 2h 0D 3h 76 46 Powered by Enderson Neves Cruz Endereço Dados A1 A0 D3 D2 D1 D0 Aula 02 – Memórias Memória ROM Arquitetura interna • Exemplo de uma memória ROM 2 x 4 a MOSFET Endereço Dados A1 A0 D3 D2 D1 D0 0 0 1 0 1 0 0 1 1 0 0 1 1 0 1 1 1 0 1 1 0 1 1 1 Endereço Dados A1 A0 D3 - D0 0h A 1h 9 2h E 3h 7 Uma conexão aberta do terminal fonte armazena nível lógico 0. Uma conexão fechada do terminal fonte armazena nível lógico 1. 47 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória ROM Temporização Access Time Tempo de acesso Output Enable Time Tempo de habilitação da saída Atraso existente entre a entrada CS e a saída de dados válidos Valores típicos Tempos tACC tOE Transistores Bipolares 30 a 90ns 10 a 20ns NMOS 35 a 500ns 25 a 100ns CMOS 20 a 60ns 12 a 50ns 48 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória ROM Exemplos comerciais • Memória ROM 32k x 8 TMS47256 (MROM NMOS) TMS47256-20NL General Purpose Mask Programmable ROM Texas Instruments Number of Words=32k Bits Per Word=8 t(a) Max. (s) Access Time=200n Output Config=3-State Number of Chip Selects=2 P(D) Max.(W) Power Dissipation=500m Nom. Supp (V)=5.0 Status=Discontinued Package=DIP Pins=28 Military=N Technology=NMOS 49 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória PROM • PROM – Programable Read Only Memory Memória Somente de Leitura Programável • É uma memória não-volátil. • A programação da PROM pode ser realizada pelo usuário, de acordo com suas necessidades. • São utilizadas conexões a fusível para realizar a programação. • Uma vez programada não pode ser apagada ou reprogramada. • Caso os dados ou o programa gravado em uma PROM necessite ser alterado ou contenha erros, o chip deve ser descartado. • São também chamadas ROM OTP (Only Time Programable) – ROM Programável apenas uma vez. • Após programadas comportam-se como uma MROM. 50 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória PROM Arquitetura interna • A estrutura interna é bem semelhante a estrutura de uma MROM utilizando diodos, transistores bipolares ou MOSFETs como células de memória. • Porém, a conexão entre a célula e a linha de dados é feita através de fusíveis que podem ser abertos ou permanecer intactos, para programar o nível lógico desejado na célula. +Vdd Fusível Os fusíveis saem intactos do fabricante. O usuário pode seletivamente queimar qualquer fusível para produzir um conjunto de dados armazenados na memória. +VPP 51 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória PROM Processo de programação ou “Queima” Processo de programação “Queima” 1. Selecionar o endereço onde o dado (palavra) será armazenado, através das linhas das entradas de endereço. 2. Fornecer os dados (palavra) a serem armazenados colocando-os nas linhas de entrada de dados. 3. Aplicar um pulso de alta tensão, normalmente entre 10 e 30V em um pino especial de programação especial do circuito integrado (Vpp) • Nas linhas de dados onde foi colocado o nível lógico 0 uma corrente alta passará pelo fusível, fazendo com que ele se abra e o nível lógico 0 fica permanentemente armazenado. • Nas linhas de dados onde foi colocado o nível lógico 1, tem-se em uma extremidade o fusível a tensão VPP e na outra Vdd. Isto faz com que uma corrente bem menor passar pelo fusível, mantendo-o intacto, garantindo que o valor armazenado seja o nível lógico 1. +Vdd 1 0 GND +VPPQ1Q0 Alta Corrente Dados a serem armazenados 1 0Dados armazenados Neste exemplo, o endereço a ser gravado os dados ativou a linha 0 das células de memória 52 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória PROM Processo de programação ou “Queima” • Exemplo de uma memória PROM 2 x 4 a MOSFET. Endereço Dados A1 A0 D3 - D0 0h 7 1h A 2h 2 3h B +Vdd +VPP Quais fusíveis devem ser queimados para armazenar os dados abaixo nesta memória? 53 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória PROM Processo de programação ou “Queima” • Exemplo de uma memória PROM 2 x 4 a MOSFET. Endereço Dados A1 A0 D3 D2 D1 D0 0 0 0 1 1 1 0 1 1 0 1 0 1 0 0 0 1 0 1 1 1 0 1 1 Endereço Dados A1 A0 D3 - D0 0h 7 1h A 2h 2 3h B +Vdd +VPP Quais fusíveis devem ser queimados para armazenar os dados abaixo nesta memória? 54 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória PROM Arquitetura interna • O processo de programação e verificação dos dados armazenados normalmente é realizado através de um equipamento denominado programador. • A operação de leitura dos dados é idêntica a MROM. • A Entrada de controle (CS ou EM) é responsável também por realizar o Power down, ou seja, colocar o chip em stand by (espera) de forma a reduzir o consumo de energia. Decodificador de endereços Buffers Matriz de registradores Células de memória CS D0 D1 D2 Dn . . . A0 A1 A2 An . . . Entrada de controlePulso de Programação (VPP) Pulse Programming 55 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória PROM Exemplos comerciais • Memória PROM 32k x 8 TMSPC27256 (OTP ROM CMOS) TMSPC27256 Texas Instruments Organization . . . 32768 by 8 Bits Single 5-V Power Supply Pin Compatible With Existing 256K MOS ROMs, PROMs, and EPROMs All Inputs /Outputs Fully TTL Compatible Max Access/Min Cycle Time VCC ± 10% ’27C/PC256-10 100 ns Power Saving CMOS Technology Very High-Speed SNAP! Pulse Programming 3-State Output Buffers 400-mV Minimum DC Noise Immunity With Low Power Dissipation (VCC = 5.5 V) − Active . . . 165 mW Worst Case − Standby . . . 1.4 mW Worst Case Temperature Range Options 56 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória EPROM • EPROM – Erasable Programable Read Only Memory Memória Somente de Leitura Programável e Apagável • É uma memória não-volátil. • Pode ser programada pelo usuário e também pode ser apagada e reprogramada sempre que desejado. • O processo de programação e verificação dos dados armazenados normalmente é realizado através de um equipamento denominado programador, externo ao circuito onde a EPROM será utilizada em sua operação normal. EPROM M x N Entrada/Saída de dados Dn........D0 Entrada de endereços An........A0 Entrada de controle CS VPP Pulso de Programação Pulse Programming 57 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória EPROM Arquitetura interna • As células de memória de uma EPROM, são transistores CMOS (Complementary Metal-Oxide Semiconductor) com a porta em flutuação (sem conexões elétricas). Transistor FAMOST (Float gate Avalanche injection MOS Transistor) Substrato http://tams-www.informatik.uni-hamburg.de/applets/cmos/ Dreno Drain Porta Gate Fonte Source FG – Float Gate Porta Flutuante A Porta flutuante (FG) é a região do transistor CMOS que possibilita o armazenamento de um dado. 58 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória EPROM Processo de programação ou “Queima” • Em seu estado normal, ao aplicar uma tensão entre a porta (G) e o substrato (P), é desenvolvido um canal que se tornará em um meio de condução entre a fonte (S) e o dreno (D). • O transistor funciona como uma chave fechada e caracteriza-se então o nível lógico 1 armazenado nacélula. VGS - - - - - - - - - - 59 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória EPROM Processo de programação ou “Queima” • Quando se aplica uma tensão, um pulso de programação de alta tensão (VPP), entre a porta (G) e o dreno (D), este potencial fará com que a região de isolamento se torne permeável possibilitando a transferência de elétrons presentes no substrato para a porta flutuante sem danificar o isolamento. • Mesmo após retirar o potencial de gravação VPP estes elétrons armazenados na porta flutuante não conseguirão retornar ao substrato, pois não existe caminho de descarga. VPP - - - - - - - - - - - - - - - -- - - - Fluxo de elétrons do substrato para a porta flutuante - - - - - -- Elétrons presos na porta flutuante 60 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória EPROM Processo de programação ou “Queima” • Os elétrons presos na porta flutuante criarão um campo contrário ao campo estabelecido quando se aplica o potencial VGS impossibilitando a formação do canal e consequentemente a condução desta célula. • Nesta situação, o transistor funciona como uma chave aberta e caracteriza-se então a gravação do nível lógico 0 na célula. - - - - - -- Elétrons presos na porta flutuante VGS + + + +++ + + Tunelamento Electron tunneling É o processo usado para alterar a localização dos elétrons na porta flutuante. 61 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória EPROM Processo de apagamento • Para apagar a informação previamente gravada na célula é necessário que os elétrons presentes na região da porta flutuante sejam energizados o que possibilitará o retorno ao substrato. • Numa EPROM isto é feito aplicando uma luz ultravioleta pela janela existente no encapsulamento da pastilha. • Por este motivo a EPROM é também conhecida como UVPROM (Ultraviolet PROM). - - - - - -- Elétrons presos na porta flutuante VGS + + + +++ + + Janela de Apagamento 62 Powered by Enderson Neves Cruz Temporização da operação de escrita (programação) • No tempo T1 o dispositivo de gravação deve fornecer o endereço e o respectivo dado a ser gravado. • Neste mesmo instante o pino VPP é levado ao potencial necessário de gravação (este potencial varia em função do modelo de EPROM). • Após a estabilização dos sinais um pulso (TPW) é dado no pino de habilitação da memória (CE) com duração em média de 50ms, para os modelos lentos e 100µs para as mais rápidas, que levará os bits de dados assumirem os valores especificados no barramento de dados. • Após a gravação o sinal VPP é retirado e o barramento de dados fica em alta impedância. • No caso das memórias EPROMs é feito um segundo passo denominado verificação dos dados que é na verdade apenas um ciclo de leitura Aula 02 – Memórias Memória EPROM Temporização • O ciclo de leitura de uma memória EPROM ocorre da mesma forma da MROM. • Já o processo de escrita apresenta algumas particularidades Tempo de gravação da programação 63 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória EPROM Exemplo – Memória EPROM 2732 4k x 8 64 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória EPROM Exemplos comerciais • Memória EPROM 64k x 8 27C64Q 27C64 65,536-Bit (8,192 x 8) UV Erasable CMOS PROM National Semiconductors Clocked sense amps for fast access time down to 200 ns Low CMOS power consumption Active Power: 55 mW max Standby Power: 0.55 mW max Single 5V power supply Pin compatible with NMOS 64K EPROMs Fast and reliable programming Static operation no clocks required TTL, CMOS compatible inputs/outputs TRI-STATE output Specifications guaranteed over full military temperature range (55ºC to 125ºC) VPP Programming Supply Voltage 12.2 - 13.0 - 13.3 V 65 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória EPROM Desvantagens • Devem ser removidas do circuito para serem apagadas e reprogramadas • A operação de apagamento apaga o chip inteiro, ou seja todas os dados gravados, não existe uma forma de selecionar apenas alguns endereços que devam ser apagados. • A operação de apagamento e reprogramação demora cerca de 20 minutos. Programador/Gravador EPROM EPROM ProgrammerApagador de EPROM EPROM Eraser 66 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória EEPROM • EEPROM – Electrically Erasable Programable Read Only Memory Memória Somente de Leitura Programável e Apagável Eletricamente • É uma memória não-volátil. • Pode ser programada pelo usuário e também pode ser apagada e reprogramada eletricamente sempre que desejado, diretamente no próprio circuito, sem a necessidade de retirá-la. • Também chamada E2PROM. EEPROM M x N Entrada/Saída de dados Dn........D0 Entrada de endereços An........A0 Entrada de controle CS VPP 67 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória EEPROM Arquitetura interna • As células de memória de uma EEPROM utilizam os transistores CMOS com a porta em flutuação de forma semelhante a da EPROM, porém com a adição de uma fina camada de óxido acima do dreno, além da extensão da porta flutuante em direção ao dreno e a fonte. • Estas alterações na estrutura possibilitam a principal característica da EEPROM, a possibilidade de ser pagada eletricamente. Substrato Dreno Drain Porta Gate Fonte Source FG – Float Gate Porta Flutuante FG Adição de uma fina camada de óxido acima do dreno Aumento da porta flutuante em direção ao dreno e a fonte 68 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória EEPROM Processo de programação ou “Queima” • O processo de gravação ocorre da mesma forma da EPROM. • Em seu estado normal, ao aplicar uma tensão entre a porta (G) e o substrato (P), é desenvolvido um canal que se tornará em um meio de condução entre a fonte (S) e o dreno (D). • O transistor funciona como uma chave fechada e caracteriza-se então o nível lógico 1 armazenado na célula. VGS - - - - - - - - - - FG 69 Powered by Enderson Neves Cruz FG Aula 02 – Memórias Memória EEPROM Processo de programação ou “Queima” • Quando se aplica uma tensão, um pulso de programação de alta tensão (VPP), entre a porta (G) e o dreno (D), este potencial fará com que a região de isolamento se torne permeável possibilitando a transferência de elétrons presentes no substrato para a porta flutuante sem danificar o isolamento. • Mesmo após retirar o potencial de gravação VPP estes elétrons armazenados na porta flutuante não conseguirão retornar ao substrato, pois não existe caminho de descarga. VPP - - - - - - - FG - - - - - - - - -- - - - Fluxo de elétrons do substrato para a porta flutuante - - - - - -- Elétrons presos na porta flutuante 70 Powered by Enderson Neves Cruz FG Aula 02 – Memórias Memória EEPROM Processo de programação ou “Queima” • Os elétrons presos na porta flutuante criarão um campo contrário ao campo estabelecido quando se aplica o potencial VGS impossibilitando a formação do canal e consequentemente a condução desta célula. • Nesta situação, o transistor funciona como uma chave aberta e caracteriza-se então a gravação do nível lógico 0 na célula. - - - - - -- Elétrons presos na porta flutuante VGS + + + +++ + + Tunelamento Electron tunneling É o processo usado para alterar a localização dos elétrons na porta flutuante. 71 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória EEPROM Processo de apagamento• Para apagar a informação previamente gravada na célula aplica-se uma tensão inversa ao pulso de programação de alta tensão (VPP), entre a porta (G) e o dreno (D). • Este potencial fará com que a região de isolamento se torne permeável possibilitando que os elétrons que estavam na porta flutuante sejam transferidas de volta para o substrato e que a célula seja apagada. -VPP - - - - - - - FG - - - - - - - - -- - - - Fluxo de elétrons da porta flutuante para o substrato 72 Powered by Enderson Neves Cruz FG VGS Gravando nível lógico 1 Gravando nível lógico 0 Aula 02 – Memórias Memória EEPROM Resumo dos processos P r o g r a m a ç ã o Q u e i m a A p a g a m e n t o L e i t u r a -VPP - - - - - - - FG - - - - - - - - -- - - - FG VPP - - - - - - - FG - - - - - - - - -- - - - 73 Powered by Enderson Neves Cruz Temporização da operação de escrita (programação) Aula 02 – Memórias Memória EEPROM Temporização • O ciclo de leitura de uma memória EEPROM ocorre da mesma forma da EPROM. • A EEPROM pode ser programada mais rapidamente que uma EPROM. Tipicamente o tempo de uma operação de escrita em um determinado endereço é de 5ms. 74 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória EEPROM Exemplo – Memória EEPROM 2864 8k x 8 75 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória EEPROM Considerações • Como o sistema de transporte de cargas (fluxo de elétrons entre a porta flutuante e o substrato) necessita de correntes muito baixa, o apagamento e a programação podem ser feitos no próprio circuito, sem a necessita de um programador externo. • Nas EEPROM é possível apagar e reescrever bytes individuais na matriz de memória, pois, durante a operação de escrita, circuitos internos apagam as células que estão no endereço indicado. • Devido a capacidade de apagar os bytes individualmente e o seu alto nível de integração, as memórias EEPROM possuem baixa densidade, ou seja, a capacidade de armazenamento por mm2 é bem menor, quando comparadas as EPROM (1/2), tornando-as mais caras. • Como o processo de armazenamento de dados na EPROM é lenta, alguns fabricantes oferecem memórias EEPROM com interfaces de barramento serial, para reduzir o espaço físico do componente. 76 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória EEPROM Exemplos comerciais • Memória EEPROM 16kbits M24C16 serial M24C16 16 Kbit serial I²C bus EEPROM STI ■ Supports both the 100 kHz I2C Standard-mode and the 400 kHz I2C Fast-mode ■ Single supply voltage: – 2.5 V to 5.5 V for M24Cxx-W – 1.8 V to 5.5 V for M24Cxx-Rev 16 – 1.7 V to 5.5 V for M24Cxx-F ■Write Control input ■ Byte and Page Write (up to 16 bytes) ■ Random and Sequential Read modes ■ Self-timed programming cycle ■ Automatic address incrementing ■ Enhanced ESD/latch-up protection ■ More than 1 million write cycles ■ More than 40-year data retention 77 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória FLASH • É uma memória não-volátil. • Pode ser programada pelo usuário e também pode ser apagada e reprogramada eletricamente sempre que desejado, diretamente no próprio circuito, sem a necessidade de retirá-la. • O apagamento das células ocorre em bloco, onde todas as células no chip são apagadas, ou por setor, onde setores específicos da matriz de memória podem ser apagados de uma única vez, mas não se consegue realizar o apagamento byte a byte. http://www.cefala.org/~leoca/flash/flash01.html FLASH M x N Entrada/Saída de dados Dn........D0 Entrada de endereços An........A0 Entrada de controle CS VPP Pulso de Programação Pulse Programming 78 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória FLASH Arquitetura interna • As células de memória de uma memória FLASH são semelhantes a da EPROM, porém possui uma camada de óxido mais uma fina na porta, sendo ligeiramente maiores. • Estas alterações na estrutura possibilitam a memória FLASH ser pagada eletricamente. Substrato Dreno Drain Porta Gate Fonte Source FG – Float Gate Porta Flutuante Camada mais fina de óxido especialmente entre a porta e a fonte 79 Powered by Enderson Neves Cruz Gravando nível lógico 1 Gravando nível lógico 0 VGS Aula 02 – Memórias Memória FLASH Resumo dos processos P r o g r a m a ç ã o Q u e i m a A p a g a m e n t o L e i t u r a VPP - - - - - - - - - - - - - - - - - - - - -VPP - - - - - - - - - - - - - - - - - - - - 80 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória FLASH Tipos de memória FLASH Flash NOR • Cada célula tem uma extremidade conectada diretamente ao terra (GND), e a outra extremidade conectada diretamente a uma linha de dados. • Este arranjo é chamado de “Flash NOR", porque ela age como uma porta NOR, isto é, quando uma das linhas de endereçamento é colocado em nível alto, o transistor de armazenagem correspondente atua para levar a linha de bits de saída para o nível baixo. • Permite acessar os dados da memória de maneira aleatória, mas com baixa velocidade. 81 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória FLASH Tipos de memória FLASH Flash NAND • As células estão conectadas de uma forma que lembra uma porta NAND: vários transistores são ligados em série, e somente se todas as linhas de endereçamento estão no nível lógico alto é que a linha pouco puxado baixa. Esses grupos são então conectadas através de alguns transistores adicionais para uma matriz NOR-bit de estilo de linha. • 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. • 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 flash mais usados em dispositivos portáteis. 82 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória FLASH Limitações • Uma limitação da memória flash é que, embora ele possa ser lido ou programado um byte ou uma palavra de cada vez em uma forma de acesso aleatório, só pode ser apagada um "bloco" (conjunto de bytes) de uma vez. • O apagamento geralmente define todos os bits no bloco no nível lógico 1. Começando com um bloco recentemente apagado, qualquer local dentro desse bloco podem ser programados. No entanto, uma vez que um bit foi definido para 0, apenas apagando todo o bloco pode ser alterado novamente para 1. • Outra limitação é que a memória flash tem um número finito de ciclos programar- apagar (normalmente escritos como ciclos E/P). A maioria dos produtos de memória flash disponíveis no mercado são garantidos para suportar cerca de 100.000 ciclos E/P, antes que o desgaste começa a deteriorar a integridade do armazenamento. 83 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória FLASH Exemplo – Memória FLASH CMOS 256K (32K x 8) 28F256A Flash Electrical Chip-Erase -1 Second Typical Chip-Erase Quick-Pulse Programming Algorithm 10 ms Typical Byte-Program 0.5 Second Chip-Program 100,000 Erase/Program Cycles 12.0V ±5% VPP High-Performance Read - 120 ns Maximum Access Time CMOS Low Power Consumption 10 mA Typical Active Current 50 mA Typical Standby Current 0W DataRetention Power Command Register Architecture for Microprocessor/Microcontroller 84 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória FLASH Exemplo – Memória FLASH CMOS 256K (32K x 8) 28F256A 85 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória FLASH Exemplo – Memória FLASH CMOS 256K (32K x 8) 28F256A Primeiramente programa-se o registrador de comandos pra realizar a operação desejada WE\ = 0 – CE\ = 0 – OE\=0 Somente após programar o registrador de comandos, a memória estará apta a realizar a operação desejada 86 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória FLASH Aplicações • Cartões de memória, • Flash drives USB (pen drives) • MP3 Players • PDAs • Tablets • Netbooks • TVs • Armazenamento interno de câmeras digitais e celulares. 87 Powered by Enderson Neves Cruz Aula 02 – Memórias Memórias ROM Resumo EEPROM FLASH EPROM MROM e PROMNão pode ser apagada nem reprogramada Pode ser apagada toda de uma vez com luz ultravioleta. Apagada e reprogramada fora do circuito Pode ser apagada eletricamente, diretamente no circuito, byte a byte. Pode ser apagada eletricamente, diretamente no circuito, por setor ou toda de uma vez. C o m p l e x i d a d e e c u s t o d o d i s p o s i t i v o 88 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória RAM • RAM – Random Access Memory Memória de acesso aleatório • É uma memória volátil. • O termo RAM quer dizer que qualquer posição de memória possui a mesma facilidade de acesso. Porém, muitos tipos de memória (ROM, EPROM, etc.) possuem esta característica de acesso aleatório. • Conceitualmente, as memórias RAM são aquelas que permitem operações de leitura e escrita, em oposição as memórias ROM que são somente de leitura. • São utilizadas para armazenar programas e/ou dados temporariamente. • A medida que um programa vai sendo executado, o conteúdo de muitas posições de uma memória RAM podem ser lidos e escritos, por isso os ciclos de leitura e escrita de uma RAM precisam ser muito rápidos para não impactar na performance do sistema. 89 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória RAM • Existem duas famílias de memória RAM: SRAM – São aquelas que mantêm os dados armazenados enquanto a alimentação do circuito for mantida. Utiliza flip-flops como células de memória. DRAM – Utilizam capacitores como células de memória, consequentemente a medida que o capacitor vai se descarregando o dado armazenado vai também desaparecendo. Sendo assim, de tempos em tempos é necessário recarregar o capacitor. http://asic-soc.blogspot.com/2007/07/sram-cell-design.html http://www.mspc.eng.br/eledig/eldg4140.shtml http://tams-www.informatik.uni-hamburg.de/applets/sram/index.html http://jawadsblog.wordpress.com/2010/04/11/memory-cells/ http://arstechnica.com/paedia/r/ram_guide/ram_guide.part1-4.html 90 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória SRAM • SRAM – Static Random Access Memory Memória de acesso aleatório estática • É uma memória volátil. • As memórias estáticas mantêm os dados armazenados enquanto a alimentação do circuito for mantida. SRAM M x N Entrada/Saída de dados Dn........D0 Entrada de endereços An........A0 Entrada de controle CS R/W Entrada Leitura / Escrita 91 Powered by Enderson Neves Cruz Transistores Bipolares Maior velocidade MOS tipo N Maior densidade CMOS Menor consumo PMOSPMOS NMOSNMOS Aula 02 – Memórias Memória SRAM Arquitetura interna • Utilizam essencialmente flip-flops como células de memória, que permanecem em um determinado estado (armazenando um bit) indefinidamente, desde que a alimentação do circuito não seja removida. • Utilizam transistores bipolares, MOS, CMOS para a construção dos flip-flops. • Os transistores Q3 e Q4 funcionam como resistores. 92 Powered by Enderson Neves Cruz Aula 02 – Memórias Q Q Memória SRAM Arquitetura interna Se a linha de endereço está em nível 0, os transistores Q5 e Q6 não conduzem e o dado é mantido na célula. Se a linha de endereço vai para nível 1, os transistores Q5 e Q6 passam a conduzir, permitindo operações de escrita ou de leitura. Se a linha R/W está em nível 0, o transistor Q8 está conduzindo, permitindo a transferência da linha de dados para a célula. Se a linha R/W está em nível 1, o transistor Q7 está conduzindo, permitindo o dado armazenado na célula seja transferido para a linha de dados Word Line AnalogiaDado Dado Adress Line Word Line B i t L i n e Bit Line 93 Powered by Enderson Neves Cruz Aula 02 – Memórias Q Q Memória SRAM Processo de escrita • Se Dado = 0 �Os transistores Q1 e Q4 conduzem, assim o lado esquerdo Q assume o valor 0 e o lado direito (Q\) 1. • Se Dado = 1 �Os transistores Q2 e Q3 conduzem, assim o lado esquerdo Q assume o valor 1 e o lado direito (Q\) 0. 1 0 94 Powered by Enderson Neves Cruz Aula 02 – Memórias Q Q Memória SRAM Processo de leitura • Com a linha de endereço em nível baixo (0) Q5 e Q6 não conduzem e o dado não aparece na linha de dados. • Com a linha de endereço em nível alto (1) Q5 e Q6 conduzem e o dado armazenado na célula (Q) aparece na linha de dados, . 1 1 95 Powered by Enderson Neves Cruz Ciclo de Leitura • tCO - tempo necessário para que a saída da RAM saia do estado de alta impedância, apresentando dados válidos em suas linhas. • tOD - intervalo de tempo entre a desabilitação da memória e o retorno da saídas ao estado de alta impedância • A duração total do ciclo de leitura tRC, compreende o intervalo entre os tempos t0 e t4, Aula 02 – Memórias Memória SRAM Temporização 96 Powered by Enderson Neves Cruz Ciclo de Escrita • tAS - tempo de estabelecimento do endereço (setup), cujo objetivo é permitir que o decodificador de RAM selecione a posição de memória endereçada. • tW - tempo de escrita em que os sinais R/W e CS são mantidos em nível baixo. • tDS - tempo mínimo de permanência de dados válidos na entrada da RAM, antes da desabilitação dos sinais CS e R/W. • tDH - tempo de retenção de dado (time hold) é o tempo máximo de retenção de dados válidos após a desabilitação dos sinais CS e R/W. • A duração total do ciclo de escrita tWC, compreende o intervalo entre os tempos t0 e t4, Aula 02 – Memórias Memória SRAM Temporização 97 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória SRAM Exemplo – Memória SRAM (8K x 8) MCM6264C 8K x 8 Bit Fast Static RAM The MCM6264C is fabricated using Motorola’s high–performance silicon–gate CMOS technology. JEDEC standard Single 5 V ± 10% Power Supply Fully Static — No Clock or Timing Strobes Necessary Fast Access Times: 12, 15, 20, 25, and 35 ns Equal Address and Chip Enable Access Times Output Enable (G) Feature for Increased System Flexibility and to Eliminate Bus Contention Problems Low Power Operation: 110 – 150 mA Maximum AC Fully TTL Compatible — Three State Output Joint Electron Devices Engineering Council (JEDEC) 98 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória DRAM • DRAM – Dinamic Random Access Memory Memória de acesso aleatório dinâmica • É uma memória volátil. • As memórias dinâmicas mantêm os dados armazenados enquanto a alimentação do circuito for mantida. DRAM M x N Entrada/Saída de dados Dn........D0 Entrada de endereços An........A0 Entrada de controle CAS Seleção da coluna de endereço CSR/W Entrada Leitura / Escrita RAS Seleção da linha de endereço 99 Powered by EndersonNeves Cruz Aula 02 – Memórias Memória DRAM Arquitetura interna • São fabricados utilizando tecnologia MOS e se destacam pela sua alta capacidade 9densidade), baixo consumo e velocidade de operação moderada. • A célula básica é constituída por um transistor MOS e um microcapacitor, tipicamente de poucos picofarads . Capacitor NMOS Adress Word Line Dado Bit Line Capacitor carregado NMOS 1 1 + + + + Armazenando o nível alto (1) Capacitor descarregado NMOS 1 0 Armazenando o nível baixo (0) 100 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória DRAM Arquitetura interna • Devido as a tendência de descarga do capacitor ao longo do tempo necessitam periodicamente de recarga das células de memória. • Esta operação de recarga é chamada, operação de refresh, e necessitam de circuitos de suporte, que podem ser internos ou externos ao chip. Word Line Bit Line Analogia 101 Powered by Enderson Neves Cruz Analogia Chaves S1 e S2 fechadas. As chaves S3 e S4 são mantidas abertas. Aula 02 – Memórias Memória DRAM Processo de escrita • Com a linha R/W no nível baixo (0), o transistor S1 conduz e com a linha de endereço (Word line) no nível alto (1), o transistor S2 conduz. Essa operação conecta a linha de dados (Bit Line) ao capacitor. • Se houver nível lógico alto (1) na entrada o capacitor será carregado. Caso contrário, o capacitor irá descarregar. Após a operação, as chaves serão abertas, isolando o capacitor do restante do circuito. Word Line Bit Line 1 0 102 Powered by Enderson Neves Cruz Analogia Chaves S2, S3 e S4 fechadas. A chaves S1 é mantidas fechada. Aula 02 – Memórias Memória DRAM Processo de leitura • Com a linha R/W no nível alto (1), o transistor S3 conduz, com a linha de endereço no nível alto (1), o transistor S2 conduz e com a linha de Refresh no nível alto (1), o transistor S4 conduz. Essa operação conecta a linha de dados ao capacitor. A tensão do capacitor, aplicada ao amplificador sensor, é comparada à tensão de referência. O amplificador sensor apresentará em sua saída 0 ou 1, dependendo da tensão de entrada. Essa saída realimenta o capacitor, uma vez que os transistores S2 e S4 estão conduzindo, de modo a executar a operação de refresh. Ou seja, uma célula sofre a operação de refresh toda vez que é lida. 1 1 1 103 Powered by Enderson Neves Cruz Analogia Chaves S2, S3 e S4 fechadas. A chaves S1 é mantidas fechada. Aula 02 – Memórias Memória DRAM Processo de REFRESH • Conforme visto, uma célula sofre a operação de refresh toda vez que é lida. • Porém, nem todas as células serão lidas a tempo de recarregar o capacitor. Este tempo depende das especificações da memória. • Por isso, é necessário realizar a operação de REFRESH dentro do tempo especificado pelo fabricante, e consiste basicamente em acessar todos os endereços em um operação de leitura, sem porém habilitar a saída de dados. 1 1 1 104 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória DRAM Multiplexação de endereços • Os chips de memória de maior capacidade (alta densidade), precisam ter muitos pinos para entrada de endereço, se for mantida a relação de um pino para cada bit de endereço. • A fim de reduzir o número de pinos de endereço em chip DRAM de alta capacidade, alterando a relação dos pinos com os bits de endereço, os fabricantes usam a técnica da multiplexação de endereços, através da qual cada pino do integrado pode acomodar dos bits diferentes do endereço. • A redução no número de pinos, obtida com esta técnica, provoca um significativa redução no tamanho do encapsulamento dos chips, possibilitando maximizar a quantidade de memória em uma placa de memória. 105 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória DRAM Multiplexação de endereços Amplificadores de Refresh e controle de entrada/saída Decodificador do endereço da coluna Latch de endereço da coluna D e c o d i f i c a d o r d o e n d e r e ç o d a l i n h a L a t c h d o e n d e r e ç o d a l i n h a RAS Row Address Strobe O sinal RAS (strobe de endereço de linha) comanda o armazenamento dos bits menos significativos no registrador (latch) interno do chip. CAS Column Address Strobe O sinal CAS (strobe de endereço de coluna) comanda o armazenamento dos bits mais significativos no registrador (latch) interno do chip. 106 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória DRAM Multiplexação de endereços Amplificadores de Refresh e controle de entrada/saída Decodificador do endereço da coluna Latch de endereço da coluna D e c o d i f i c a d o r d o e n d e r e ç o d a l i n h a L a t c h d o e n d e r e ç o d a l i n h a 1. O endereço desejado é colocado na entrada de endereços (Adress Bus) 2. A RAS é ativado armazenando nos registradores de endereço de linha, os bits menos significativos do endereço. 3. O decodificador do endereço da linha seleciona a linha correspondente. 4. A CAS é ativado armazenando nos registradores de endereço de coluna, os bits mais significativos do endereço. 5. O decodificador do endereço da coluna seleciona a coluna correspondente. E consequentemente a célula desejada. 6. De acordo com a operação selecionada através da entrada R/W, o dado será enviado para as linhas de dados (Data Bus), ou os dados presentes da linha de dados serão armazenados na célula. 1 2 3 4 5 6 107 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória DRAM Multiplexação de endereços • Exemplo de uma DRAM 4M x 1 108 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória DRAM Multiplexação de endereços • Exemplo de uma DRAM 16k x 1 Observe que se a memória fosse de outro tipo todas as linhas de endereço deveria estar conectadas a memória No caso da DRAM somente metade das linhas são utilizadas. 109 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória DRAM Multiplexação de endereços • Exemplo de uma DRAM 16k x 1 • A entrada de seleção de multiplexador (MUX) controla a presença das linhas de endereço A0 até A6 ou A7 até A13 na entrada de endereços da DRAM. A temporização do sinal MUX deve estar em sincronismo com os sinais CAS e RAS, responsável pela passagem dos bits de endereço aos circuitos internos da memória. • O sinal de MUX deve estar no nível BAIXO quando RAS assumir seu nível ativo, no caso nível BAIXO, de maneira a fazer com que as linhas de endereços A0 até A6 geradas pelo processador cheguem às entradas de endereço da DRAM para serem armazenadas no registrador interno da memória na transição negativa de RAS. • Da mesma forma, o sinal MUX deve estar ALTO quando CAS assumir o nível BAIXO, fazendo com que as linhas de endereço A7 até A13 cheguem até a DRAM, para serem armazenadas na transição negativa de CAS. 110 Powered by Enderson Neves Cruz Ciclo de Escrita • Observar que na transição negativa do CAS o endereço é selecionado e permanece até a transição positiva do sinal R/W. Aula 02 – Memórias Memória DRAM Temporização 111 Powered by Enderson Neves Cruz Ciclo de Leitura Aula 02 – Memórias Memória DRAM Temporização 112 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória DRAM Processo de REFRESH • Conforme visto, uma célula sofre a operação de refresh toda vez que é lida.• Porém, nem todas as células serão lidas a tempo de recarregar o capacitor. Este tempo depende das especificações da memória. • Por isso, é necessário realizar a operação de REFRESH dentro do tempo especificado pelo fabricante (geralmente entre 4 e 16ms), e consiste basicamente em acessar todos os endereços em um operação de leitura, sem porém habilitar a saída de dados. • Existem dois métodos de refresh: � Refresh em rajada (busrt) – onde a operação normal da memória é suspensa, até que todas as linha tenham sido refrescadas � Refresh distribuído – onde o processo de refrescamento é intercalo com as operações normais. Os fabricantes, porém, desenvolveram DRAMs, de modo que sempre que uma operação de leitura é realizada em uma célula, todas as células daquela linha são refrescadas 113 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória DRAM Encapsulamentos DIP - Dual In-Line Package SIPP - Single In-line Pin Package SIMM 30 pinos - Single In-line Memory Module SIMM 72 pinos - Single In-line Memory Module DIMM 168 pinos - Dual In-line Memory Module DIMM 184 pinos - Dual In-line Memory Module 114 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória DRAM Tipos • DRAM FPM (Fast Page Mode) – DRAM do tipo modo de página rápida – permite o acesso mais rápido a qualquer posição da memória dentro da página. • DRAM EDO (Extended Data Output) – DRAM com saída de dados estendida – possuem latch em sua saída que permite que os dados sejam lidos enquanto o próximo endereço está sendo enviado pelo controlador de memória. • SDRAM (Synchronous DRAM) – O controle é realizado pelo clock do sistema e não pela entrada CAS, em rajadas (burst) de posições de memória dentro da mesma página e internamente são organizadas em 2 bancos. Isto permite que os dados sejam acessados em taxas bastantes elevadas. � DDR SDRAM - Double Data Rate SDRAM � DDR2 SDRAM � DDR3 SDRAM 115 Powered by Enderson Neves Cruz Aula 02 – Memórias Memória RAM Comparativo Parâmetro SRAM DRAM Observações Tamanho e Complexidade da célula Tamanho da memória Complexidade do circuito Capacidade de endereçamento Tempo de resposta Custo Parâmetro SRAM DRAM Observações Tamanho e Complexidade da célula X DRAM utiliza apenas um transistor e um capacitor enquantoa SRAM apresenta um maior número de componentes. Tamanho da memória X A DRAM ocupa menos espaço interno da pastilha e externamente apresenta um aproveitamento maior através da multiplexação das linhas de endereço. Complexidade do circuito X A SRAM excetuando a sua célula apresenta uma estrutura de suporte bem mais simples, pois não faz multiplexação de endereços e não necessita de refresh. Capacidade de endereçamento X A multiplexação de endereços duplica a capacidade de endereçamento de uma DRAM. Tempo de resposta X A SRAM não faz multiplexação, apresenta um amplificadorcom resposta mais rápida e não necessita de refresh. Custo X A DRAM apresenta a maior relação capacidade dearmazenamento/preço 116 Powered by Enderson Neves Cruz Aula 02 – Memórias Expansão de memórias • Na maioria das aplicações, a capacidade requerida e o tamanho da palavra necessária nem sempre são alcançados com um único chip. • Além disso, geralmente necessita-se de memórias de tipos diferentes e tamanhos diferentes conectados a um mesmo sistema. • Portanto é necessário fazer expansão do tamanho da palavra (número de bits de dados) e/ou da capacidade de memória (número de endereços). • Módulo de memória é a combinação de chips (blocos) de capacidade inferior atuando como um único chip ou bloco de memória. 16 x 4 CS R/W A0 A1 A2 A3 D0 D1 D2 D3 16 x 8 CS R/W A0 A1 A2 A3 D0 D1 D2 D3 D4 D5 D6 D7 256 x 4 CS R/W A0 A1 A2 A3 A4 A5 A6 A7 D0 D1 D2 D3 Expansão do tamanho da palavra Expansão da capacidade 117 Powered by Enderson Neves Cruz Ordem dos bits de dados RAM-0 RAM-1 Total do módulo Aula 02 – Memórias Expansão de memórias Expansão do tamanho da palavra • A expansão do tamanho da palavra consiste em aumentar o número de bits de dados. • Para isto, basta conectar todas as linhas de endereço dos blocos que constituíram o módulo (A0 com A0, A1 com A1 e assim por diante), assim como as linhas de controle (CS, R/W, etc.) e definir quais os blocos serão os bits de dados mais significativos e quais serão os menos significativos, ou seja, a ordem dos bits de dados. 16 x 8 CS R/W A0 A1 A2 A3 D0 D1 D2 D3 D4 D5 D6 D7 118 Ordem dos bits de dados RAM-0 DB4 a DB7 Bits mais significativos RAM-1 DB0 a DB3 Bits menos significativos Total do módulo DB0 a DB78 bits Powered by Enderson Neves Cruz Aula 02 – Memórias Expansão de memórias Expansão do tamanho da palavra • Exemplo: Módulo de memória 1k x 8 formado por 8 blocos de 1k x 1 119 Powered by Enderson Neves Cruz Aula 02 – Memórias Expansão de memórias Expansão do tamanho da palavra • Exemplo: Módulo de memória DRAM 4M x 8 formado por 8 blocos de 4M x 1 (TMS44100) 120 Powered by Enderson Neves Cruz Faixa de endereços RAM-0 RAM-1 Total do módulo Aula 02 – Memórias Expansão de memórias Expansão da capacidade • A expansão do capacidade consiste em aumentar o número de bits de endereços. • Para isto, basta conectar as linhas de dados dos blocos que constituíram o módulo (D0 com D0, D1 com D1 e assim por diante), assim como as linhas R/W. • Definir qual dos blocos serão os bits de endereço mais significativos e quais serão os menos significativos, ou seja, a ordem dos bits de endereçamento, através do sinal de habilitação do chip (CS – Chip Select). Faixa de endereços RAM-0 00000 a 01111 RAM-1 10000 a 11111 Total do módulo 00000 a 11111 32 x 4 32 palavras 121 O inversor é utilizado para controlar o sinal de habilitação do chip (CS), quando em nível alto as saídas estão desabilitadas (nível alto). Powered by Enderson Neves Cruz Faixa de endereços PROM-0 PROM-1 PROM-2 PROM-3 Total do módulo Aula 02 – Memórias Expansão de memórias Expansão da capacidade • Normalmente, como a quantidade de blocos é maior, utiliza-se um decodificador para controlar a geração dos sinal de habilitação do chip (CS). • Neste caso, as entradas do decodificador são as linhas do barramento de endereços mais significativas e as saídas são conectadas as entradas de habilitação do chip (CS). 122 Faixa de endereços PROM-0 0000 a 07FF PROM-1 0800 a 0FFF PROM-2 1000 a 17FF PROM-3 1800 a 1FFF Total do módulo 0000 a 1FFF 8k x 8 8192 palavras Powered by Enderson Neves Cruz Aula 02 – Memórias Expansão de memórias Expansão da capacidade • É extremamente comum a utilização de dispositivos de diferentes tipos e tamanhos em um mesmo sistema de memória. • Neste sistema cada tipo de memória tem um papel específico no sistema: � Uma memória não volátil armazena as instruções do programa. � Uma memória volátil de leitura/escrita armazena os dados e programas temporários. � Outra memória não volátil (EEPROM ou FLASH) armazena os dados processados que não podem ser perdidos. • Cada tipo de memória possui uma faixa de endereços específicos, criando-se o chamado mapa de memória, ou seja, a distribuição dos endereços de memória pelos diversos tipos de memória utilizados no sistema. • Quando se utiliza, memórias de tamanhos diferentes pode ocorrer a ocupação de modo redundante de áreas de memória, denominadas áreas de memória refletida. Isto ocorre devido a decodificação incompleta de endereços dos blocos de memória com tamanho menor, pois nem todas as linhas de endereço são conectadas ao barramento.
Compartilhar