Colegiado de Engenharia de Computação Disciplina: Introdução à Engenharia da Computação Aulas 10 (semestre 2011.2) Prof. Rosalvo Ferreira de Oliveira Neto, M.Sc. rosalvo.oliveira@univasf.edu.br 2
Hardware - Memória 3
Roteiro 1. Definições 2. Conceitos Importantes 3. Hierarquia de Memória 4. Tecnologias de fabricação 4
Definições Componente de um sistema de computação cuja função é armazenar informações que são (ou serão) manipuladas por esse sistema, para que elas (as informações) possam ser prontamente recuperadas (quando necessário). Conceitualmente, a memória é um depósito onde são guardados elementos (informações) para serem usados quando desejado (recuperação). Operações da memória: Guardar um elemento (ou um grupo); Recuperação de um elemento. 5
Definições Em um sistema de computação, não é possível construir e utilizar apenas um tipo de memória. Para certas atividades, por exemplo, é fundamental que a transferência de informações seja a mais rápida possível. Memória de um computador subsistema - construída de vários componentes (vários tipos diferentes de memória) interligados e integrados, com o objetivo de armazenar e recuperar informações. Necessidade de construção de vários tipos de memória: Velocidade das UCP ( > tempo de acesso da memória). Capacidade de armazenamento. 6
Conceitos Importantes Tempo de acesso; Capacidade; Volatilidade; Temporariedade; Custo. 7
Conceitos Importantes Tempo de acesso Indica quanto tempo a memória gasta para colocar uma informação no barramento de dados após uma determinada posição ter sido endereçada. É um dos parâmetros que pode medir o desempenho da memória. Denominação: Tempo de acesso para leitura (ou tempo de leitura). 8
Conceitos Importantes Capacidade Quantidade de informação que pode ser armazenada em uma memória; Unidade de medida mais comum: byte; podem ser usadas outras unidades como células (no caso de memória principal ou cache), setores (no caso de discos) e bits (no caso de registradores). Dependendo do tamanho da memória, isto é, de sua capacidade, indica-se o valor numérico total de elementos de forma simplificada, através da inclusão de K (kilo), M (mega), G (giga) ou T (tera). 9
Conceitos Importantes Volatilidade Memórias podem ser do tipo volátil ou não volátil. Memória não volátil: retém a informação armazenada quando a energia elétrica é desligada. Ex.: Discos e Fitas. Memória volátil : perde a informação armazenada na ausência de energia elétrica. Ex.: Registradores, Memória Principal e Cache. 10
Conceitos Importantes Temporariedade Indica o conceito de tempo de permanência da informação em um dado tipo de memória. Classificação: Armazenamento permanente. Ex.: Discos, disquetes. Armazenamento transitório (temporário). Ex.: registradores, memória cache e memória principal. 11
Conceitos Importantes Custo Bastante variado em função de diversos fatores: Tecnologia de fabricação; Quantidade de bits em um certo espaço físico. Uma boa unidade de medida de custo é o preço por byte armazenado, em vez do custo total da memória em si. 12
Hierarquia de Memória Custo alto; Velocidade alta; Baixa capacidade Registradores Memória Cache Custo baixo; Velocidade baixa; Capacidade elevada Discos CD-ROM Memória Principal Memória Secundária 13
Hierarquia - Registradores Elementos superiores da pirâmide de memória, por possuírem a maior velocidade de transferência dentro do sistema (menor tempo de acesso), menor capacidade de armazenamento e maior custo. Memórias rápidas usadas em execução de instruções dentro do processador (objetivo: minimizar os acessos às memórias externas ao processador). 14
Hierarquia - Registradores Registradores - Parâmetros Tempo de acesso/ciclo de memória: 1 a 5 ns (hipotético) Capacidade: baixa - 8 a 64 bits Volatilidade: dispositivos voláteis. Temporariedade: armazenamento temporário. Custo: mais elevado. 15
Hierarquia - Cache Problema de Sistemas de Computação congestionamento (gargalo) na comunicação CPU e Memória Principal; Solução: desenvolvimento de uma técnica que consiste na inclusão de um dispositivo de memória entre CPU e a memória principal - memória Cache; A memória Cache tem como função acelerar a velocidade de transferência das informações entre CPU e a memória principal, aumentando o desempenho dos sistemas; Usada para armazenamento de instruções e dados mais freqüentemente acessados do programa em execução. 16
Hierarquia - Cache Atualmente, há diversos tipos de memória cache utilizados em sistemas de computação modernos: Cache para a Memória Principal (RAM Cache), Cache para Disco. Tempo de acesso/ciclo de memória: 5 a 7 ns (hipotético). Capacidade: deve-se conciliar o compromisso de uma capacidade apreciável com a não-elevação demasiada do preço. Valores: 16 KB e 512 KB (cache L1) e 2 MB (cache L2). Volatilidade - dispositivos voláteis. Custo - o custo de fabricação das memórias cache é alto. 17
Hierarquia - Cache Tipos de Memória RAM Cache 18
Hierarquia Memória Principal A memória básica de um sistema de computação desde seus primórdios. É o dispositivo no qual o programa que vai ser executado é armazenado para que a CPU vá "buscando" instrução por instrução. 19
Hierarquia - Memória Principal Uma das principais características definidas no projeto de arquitetura do sistema de Von Neumann, que se constituiu na primeira geração dos computadores, consistia no fato de ser uma máquina "de programa armazenado". O fato de as instruções, uma após a outra, poderem ser imediatamente acessadas pela CPU é que garante o automatismo do sistema e aumenta a velocidade de execução dos programas. 20
Hierarquia Memória Principal Memória Principal Parâmetros Tempo de acesso/ciclo de memória: 7 a 15 ns (hipotético). Capacidade: usualmente, na ordem de 2 ou mais GB. Volatilidade: volátil. Há normalmente uma pequena quantidade de memória não volátil fazendo parte da memória principal. Temporariedade: variável. Custo: Têm um custo mais baixo que o das memórias cache; 21
Hierarquia Memória Principal Como os dados são organizados na Memória? Memórias são organizadas em células Cada célula possui um número associado: endereço Programas referenciam uma célula a partir deste endereço Se uma memória possui n células, tais células possuirão os endereços 0 à n -1 22
Hierarquia Memória Principal Todas as células de uma memória possuem o mesmo número de bits Se uma célula é constituída de x bits, ela pode armazenar qualquer uma das 2 x diferentes combinações de bits 23
Hierarquia Memória Principal Endereços de memória: Capacidade da memória principal T = N x M T = capacidade da memória em bits N = número de endereços M = número de bits por célula C = T / 8 C = capacidade da memória em bytes 24
Hierarquia Memória Principal 25
Hierarquia Memória Principal Exercício 1:Uma memória principal RAM (MP) tem um espaço máximo de endereçamento de 2K. Cada célula pode armazenar 16 bits. a) Qual o valor total de bits que pode ser armazenado nesta memória? O valor total de bits que pode ser armazenado nesta memória (T) é: T = N x M T = 2K x 16 T = 32 Kbits (= 4 KB) 26
Hierarquia Memória Secundária Memória Secundária Denominada memória secundária, memória auxiliar ou memória de massa. Objetivo: garantir um armazenamento mais permanente à toda a estrutura de dados e programas do usuário - deve possuir maior capacidade que a memória principal. Pode ser constituída por diferentes tipos de dispositivos, alguns diretamente ligados ao sistema para acesso imediato (ex.: discos rígidos), e outros que podem ser conectados quando desejado (ex.: disquetes, fitas, CD-ROM etc.). 27
Hierarquia Memória Secundária Memória Secundária Parâmetros Tempo de acesso/ciclo de memória: são, em geral, dispositivos eletromecânicos e não circuitos puramente eletrônicos - possuem tempo de acesso maiores. Tempos de acesso típicos: ordem de 8 a 15 ms (hipotético). Discos do tipo CD-ROM: 120 a 300 ms; fitas magnéticas - ordem de segundos; Capacidade: varia bastante, dependendo do tipo de dispositivo utilizado. Discos rígidos ordem de 500 GB; CD-ROM ordem de 700 MB, etc; 28
Hierarquia Memória Secundária Memória Secundária Parâmetros Volatilidade: não voláteis. Temporariedade - armazenamento com caráter permanente ou, pelo menos, de longo período de armazenamento. Custo: bastante variado. 29
Hardware Memória Tipos de Memória em uso nos computadores Memória principal Processador (Cache L1 e Registradores) Memória secundária Cache L2 (separado) 30
Hardware Memória Tecnologias de fabricação: Memórias de semicondutores; Memórias de meio magnético; Memórias de meio óptico. 31
Memórias Semicondutoras Dispositivos fabricados com circuitos eletrônicos e baseados em semicondutores. Rápidas e relativamente caras, se comparadas com outros tipos. Há várias tecnologias específicas, cada uma com suas vantagens, desvantagens, velocidade, custo, etc... Exemplos: Registradores, Memória Principal e Memória Cache. 32
Memórias Semicondutoras Classificação de Memórias Semicondutoras L/E - Leitura/Escrita SRAM RAM (Random Access Memory) (R/W - Read/Write) ROM (Somente Leitura) (Read Only Memory) DRAM ROM PROM EPROM EEPROM 33
Hardware Memória Memória R/W - Read and Write Memória de leitura e escrita, de acesso aleatório e volátil. Pode ser estática (SRAM) ou dinâmica (DRAM). SRAM - uso de circuitos transistorizados (mantém a informação enquanto estiver energizada). DRAM - uso de capacitores, necessita de refresh pela CPU ou perderá seu conteúdo. 34
Hardware Memória ROM Read-Only Memory Memória apenas de leitura. Uma vez gravada, não pode mais ser alterada. De acesso aleatório, não é volátil. Mais lenta que a R/W e mais barata. Utilizada geralmente para gravar programas em que não se deseja permitir que o usuário possa alterar ou apagar (Ex: a BIOS - Basic Input Output System). Outros tipos: PROM, EPROM, EEPROM e Flash. 35
Hardware Memória Memórias de meio magnético Fabricados de modo a armazenar informações sob a forma de campos magnéticos. Devido à natureza eletromecânica de seus componentes e à tecnologia de construção em comparação com memórias de semicondutores, esse tipo é mais barato, permitindo armazenamento de grande quantidade de informação. Método de acesso às informações - seqüencial. Exemplos: disquetes, discos rígidos e fitas magnéticas (de carretel ou de cartucho). 36
Hardware Memória Memórias de meio óptico Dispositivos que utilizam um feixe de luz para marcar o valor (0 ou 1) de cada dado em sua superfície. Exemplos: CD-ROM (leitura); CD-RW (leitura e escrita); DVD-ROM; DVD-RW; 37
Referências Bibliográficas CAPRON, H. L., JOHNSON, J. A. Introdução à Informática. 8ª edição. Pearson Prentice-Hall do Brasil, 2009. NORTON, P. Introdução à Informática. Makron Books, 1995. Notas de aula da disciplina Introdução à Informática, do professor Fabrício Braga (UNIVASF). Notas de aula da disciplina Introdução à Engenharia da Computação, do professor Fábio Nelson (UNIVASF). Notas de aula da disciplina Introdução à Computação, da professora Joseana Macêdo Fechine (da UFCG). 38