Prof. Valdemir S. Silva [email protected] Aula 06 ▪ Serão abordadas as características essenciais da memória principal ou primária de um sistema computacional, tais como: ✓ Organização; ✓ Operações: Leitura e Escrita; ✓ Capacidade de MP; ✓ Tipos de Memória Principal; Conceitos ▪ Revendo alguns conceitos e apresentando outros novos: ✓ A MP é o processador; “depósito” de trabalho do ✓ Palavra é a unidade de informação do sistema CPU/MP que deve representar o valor de um número (dado) ou uma instrução de máquina; ✓ Endereço é a identificação que define a localização para cada elemento armazenado na memória; Conceitos ✓ Conteúdo e posição de MP consistem no valor armazenado e qual a posição que o valor está localizado na MP, respectivamente; ✓ Unidade de armazenamento é definido como o grupo de bits que é inequivocamente identificado e localizado por um endereço, ou seja, a célula; ✓ Unidade de transferência para a MP, consiste na quantidade de bits que é transferida da memória em uma operação de leitura ou transferida numa operação de escrita; Conceitos Organização básica da MP ▪ A MP de qualquer sistema computacional é organizada como um conjunto de N células sequencialmente dispostas a partir da célula de endereço igual a 0 até a última, de endereço igual a N-1; ▪ Cada célula é construída para armazenar um grupo de M bits, que representa a informação propriamente dita e que é manipulado em conjunto em uma operação de Leitura e Escrita; Organização básica da MP MP 1 MP 2 MP 3 Célula Temos um total de 96 bits em cada MP. Operações do Processador com a MP ▪ Conforme dito anteriormente, realizar duas operações: a MP pode ✓ Escrita (write) – armazenar informações na memória; ✓ Leitura (read) – recuperar uma informação armazenada na memória; ▪ Nas operação de leitura não há destruição do conteúdo da memória, diferente da operação de escrita Operações do Processador com a MP ▪ Para entender melhor como funcionam as operações, é preciso apresentar os elementos que compõem a estrutura Processador / MP e que são utilizadas nas operações: ✓ Barramentos (de Dados (BD), de Endereços (BE) e de Controle (BC)); ✓ Registradores de Dados e Registradores de Memória; ✓ Controlador da Memória; Operações do Processador com a MP ▪ Barramento de Dados (BD) - Interliga o RDM à MP. É bidirecional, ou seja, os dados trafegam da CPU para a MP ou da MP para a CPU; ▪ Barramento de Endereços (BE) - Interliga o REM à MP. É unidirecional, uma vez que a CPU sempre informa à MP qual endereço pretende ler ou escrever; ▪ Barramento de controle (BC) - Interliga a CPU à MP, permitindo a passagem de sinais de controle durante uma operação de leitura ou escrita. É bidirecional, pois a CPU pode enviar sinais de controle para a MP (comando de leitura ou escrita), e a MP pode enviar sinais do tipo WAIT (ordena que a CPU fique em estado de espera – WAIT STATE); Operações do Processador com a MP ▪ Registrador de Dados de Memória (RDM) – Registrador que armazena temporariamente a informação que está sendo transferida da MP para a CPU ou da CPU para a MP. Permite armazenar a mesma quantidade de bits do BD; ▪ Registrador de Endereços da Memória (REM) Registrador que armazena temporariamente o endereço de acesso a uma posição de memória ao se iniciar uma operação de leitura ou escrita. Permite armazenar a mesma quantidade de bits do BE; ▪ Controlador da Memória – Fica localizado na “Ponte Norte” (northbridge) do chipset; Operações do Processador com a MP ▪ Controlador da Memória – Sua função é gerar sinais para controlar o processo de leitura ou escrita, além de interligar a MP aos demais componentes do sistema computacional: ✓ Possui a lógica necessária para receber e interpretar os sinais de controle do processador e responder a ele nas operações de leitura ou escrita; ✓ Decodifica o endereço colocado no BE, localizando a célula desejada e libera os bits para o BD; ✓ Fica localizado na “Ponte Norte” (northbridge) do chipset; Controlador da Memória ▪ A realização de uma operação de leitura é efetivada através da finalização de algumas operações menores (micro-operações); ▪ Cada micro-operação consiste em uma etapa ou passo individualmente bem definido; ▪ Denominamos de tempo de acesso o tempo gasto para a realização de todas as etapas; ▪ O intervalo de tempo decorrido entre duas operações consecutivas é denominado de ciclo de memória; Passo 1 ▪ REM recebe o endereço da célula desejada para a operação; ▪ A seguir o endereço é enviado para a MP pelo barramento de endereços; Passo 2 ▪ A Unidade de Controle envia para a MP o sinal de leitura pelo barramento de controle; ▪ O endereço recebido na memória é decodificado; Passo 3 ▪ O conteúdo da célula selecionada é enviado de volta à CPU pelo barramento de dados; Passo 4 ▪ O RDM recebe do barramento de dados o conteúdo da célula selecionada na operação; ▪ Considerações: ✓ A realização completa dos 4 passos gasta um tempo de acesso à memória; ✓ Não há garantia que a MP esteja apta a realizar outra operação em seguida; ✓ Estar pronta ou não para realizar uma nova operação é uma característica que depende do tipo de RAM utilizada: o SRAM's, por exemplo, permitem que uma nova operação seja realizada após a conclusão de uma operação, enquanto que nas DRAM's isso não é possível; ▪ A realização de uma operação de escrita segue procedimento semelhante ao da operação de leitura, exceto pelo sentido da transferência, que é o inverso, ou seja da CPU para a MP; ▪ Assim, a realização dos passos necessários à efetivação de uma operação de escrita também gasta um tempo de acesso; ▪ A seguir, veremos um exemplo geral de uma operação de escrita; Passo 1 ▪ REM recebe o endereço da célula desejada para a operação; ▪ A seguir o endereço é enviado para a MP pelo barramento de endereços; Passo 2 ▪ RDM recebe de outro registrador o valor que deseja-se armazenar na MP; Passo 3 ▪ A Unidade de Controle envia para MP o sinal de leitura pelo barramento de controle; ▪ O endereço recebido na memória é decodificado; Passo 4 ▪ O conteúdo do RDM é enviado à MP pelo barramento de dados; ▪ E então o conteúdo do RDM é armazenado na MP; ▪ Considerações: ✓ Na escrita, a realização completa dos 4 passos também gasta um tempo de acesso à memória; ✓ Aqui também não há garantia que a MP esteja apta a realizar outra operação em seguida; ✓ A escrita é uma operação destrutiva, ou seja, o valor armazenado anteriormente na célula é perdido; Cálculos de Capacidade da MP ▪ A quantidade de bits de uma célula é um requisito definido pelo fabricante; ▪ M é a capacidade da célula; ▪ Com M bits cada célula permite representar 2M endereços, ou seja, o total de endereços é 2E; ▪ Dizemos que N é o total de células da MP; ▪ Podemos dizer que N = 2E; ▪ O total de bits do número que representa o endereço é igual a E; Cálculos de Capacidade da MP ▪ A Capacidade da MP, ou seja, o total de bits que podem ser armazenados é obtido por meio da expressão T = N x M; ▪ Como N = 2E, então T = 2E x M; ▪ O Tamanho do RDM é igual ao tamanho do BD. O RDM é igual ou múltiplo ao tamanho da palavra; ▪ O Tamanho do REM é igual ao tamanho do BE, e necessariamente igual a E; ▪ Quanto à leitura e escrita, as memórias podem ser classificadas como: ✓ Leitura e Escrita (Read and Write) - Esta memória permite operações de escrita e leitura pelo usuário e pelos programas e é comumente chamada de RAM (Random Access Memory), embora não seja a única RAM, considerada volátil; ✓ Somente Leitura (ROM - Read Only Memory) Esta memória permite apenas a leitura e uma vez gravada não pode mais ser alterada. Também é de acesso aleatório (isto é, é também uma RAM), mas não é volátil; Classificação de Memórias Semicondutoras Memórias de L/E (Read and Write) ▪ Memórias de acesso aleatório e volátil, podendo ser estática (SRAM) ou dinâmica (DRAM); ✓ SRAM – Constituída de circuito transistorizados, mantendo a informação enquanto estiver energizada, muito rápida (nano segundos) e é usada tipicamente como memória cache; ✓ DRAM – Constituída de chip, possui alta capacidade de armazenamento, mais lenta e é usada tipicamente como memória principal. Vem evoluindo em termos de capacidade de velocidade, sendo: o FPM DRAM, EDO DRAM, BEDO DRAM, SDRAM e RDRAM, DDR e DDR4 Memória SRAM - Exemplos Memória DRAM Memórias de Leitura (Read) ou ROM (Read Only Memory) ▪ Consideradas memórias do tipo RAM, que não permitem que a operação de escrita seja realizada em suas células; ▪ Não são voláteis, isto é a informação armazenada neste tipo de memória persiste armazenada mesmo na ausência de corrente elétrica; ▪ Utilizada geralmente para gravar programas que não se deseja permitir que o usuário possa alterar ou apagar; ▪ Aplicações: ✓ BIOS (Basic Input Output System); ✓ Microprogramas (firmware); Tipos de ROM ▪ ROM (“pura”) ✓ Os valores que armazena foram inseridos durante o processo de fabricação do chip; ✓ Construída a partir de uma matriz que é então duplicada em diversos outros chips; ✓ Barata se fabricado visando a implementação de uma grande quantidade de chips a partir da matriz; Tipos de ROM ▪ PROM (Programmable Read Only Memory): ✓ Memória apenas de leitura e programável com máquinas adequadas (chamadas queimadoras de PROM); ✓ Geralmente é comprada "virgem" (sem nada gravado), sendo muito utilizada no processo de testar programas no lugar da ROM, ou sempre que se queira produzir ROM em quantidades pequenas; ✓ Uma vez programada (em fábrica ou não), não pode mais ser alterada; Memória PROM Tipos de ROM ▪ EPROM (Erasable Programmable ROM): ✓ Memória apenas de leitura, programável (com queimadores de PROM) e apagável (com máquinas adequadas, à base de raios ultravioleta); ✓ Tem utilização semelhante à da PROM, para testar programas no lugar da ROM, ou sempre que se queira produzir ROM em quantidades pequenas, com a vantagem de poder ser apagada e reutilizada várias vezes; Memória EPROM Tipos de ROM ▪ EEPROM (Electrically Erasable Programmable Read Only Memory): ✓ É também um tipo especial de ROM muito semelhante á EPROM, tendo como diferença apenas o fato de que seu conteúdo é apagado aplicando-se uma voltagem específica em um dos seus pinos de entrada; ✓ Também chamada de EAROM (Electrically Alterable ROM), pode ser programada, apagada e reprogramada pelo controle do processador; ✓ Uma boa aplicação para a EEPROM consiste em se utilizar programação das teclas de um teclado, onde a função de cada tecla é definida em uma tabela que fica na EEPROM; Tipos de ROM ▪ Flash-ROM : ✓ Similares a EEPROM, Porem com velocidade de alteração mais rápida e incapaz de realizar alterações a nível de bytes (todo seu conteúdo deve ser alterado); ✓ O termo flash foi imaginado devido à elevada velocidade de apagamento dessas memórias em comparação com as antigas EPROM e EEPROM; ✓ Ideal para várias aplicações portáteis (câmeras digitais, palmtop, assistentes digitais portáteis, aparelhos de música digital ou telefones celulares); Dúvidas, comentários ou opiniões Obrigado! [email protected]