UNIVERSIDADE FEDERAL DOSEMI-ÁRIDO SEMI-ÁRIDO UNIVERSIDADE FEDERALRURAL RURAL DO DEPARTAMENTO DE DE CIÊNCIAS NATURAIS DEPARTAMENTO CIÊNCIASEXATAS EXATAS E E NATURAIS CURSO DE CIÊNCIA DA COMPUTAÇÃO CURSO DE CIÊNCIA DA COMPUTAÇÃO Arquitetura e Organização de Computadores 3- Sistemas de Memória Interna Parte I Prof. Sílvio Fernandes Hierarquia de Memória “Em termos ideais, desejaríamos dispor de uma capacidade de memória infinitamente grande e que pudesse disponibilizar imediatamente o conteúdo de qualquer das suas palavras... Somos forçados a reconhecer a possibilidade de construir um sistema de memória estruturado hierarquicamente, no qual cada um dos componentes da hierarquia tenha mais capacidade de armazenamento e um tempo de acesso maior do que aqueles que o precedem.” A. W. Burks, H. H. Goldstine e J. Von Neumann Preliminary Discussion of the Logical Design of na Electronic Computing Instrument, 1946 2 Hierarquia de Memória Programadores vêm exigindo capacidades ilimitadas de memória, de acesso quase que instantâneo A hierarquia de memória ajuda a criar essa ilusão 3 Hierarquia de Memória Analogia: Estudante que deseja escrever um artigo sobre os importantes desenvolvimentos no hardware dos processadores ao longo do tempo Selecionou um conjunto de livros da biblioteca e pôs sobre a mesa para pesquisar Os livros têm as descrições de várias máquinas, exceto EDSAC Então, ele volta às estantes em busca de um livro adicional Caso tenha selecionado bem os livros que se encontram sobre a mesa, existe uma grande possibilidade de encontrar neles a maioria dos tópicos de que precisa O fato de ter vários livros à frente faz com que o tempo de escrita do artigo seja menor Não foi preciso acessar todos os livros da biblioteca de uma vez, com igual prioridade 4 Hierarquia de Memória Os programas operam usando essa ideia, chamada de princípio da localidade Localidade temporal Os programas acessam uma parte relativamente pequena do seu espaço de endereçamento em um instante qualquer Se um item é referenciado, ele tende a ser referenciado novamente dentro de um espaço de tempo curto Localidade espacial Se um item é referenciado, itens cujos endereços sejam próximos dele tendem a ser logo referenciados 5 Hierarquia de Memória Tiramos proveito do princípio da localidade implementando a memória de um computador como uma hierarquia de memória Prevê a existência de vários níveis de memória, cada um com tamanhos e velocidades diverentes 6 Organização da Memória Capacidade • Tempo de acesso • Custo por bit • Frequência de acesso pelo processador • 7 Organização da Memória Dilema Tempo de acesso mais rápido, maior custo por bit Maior capacidade, menor custo por bit Maior capacidade, tempo de acesso mais lento Quando se desce na hierarquia Diminuição do custo por bit Aumento da capacidade Aumento do tempo de acesso Frequencia de acesso à memória pelo computador 8 Características Fundamentais 9 Características Fundamentais Localidade Interna ou externa Capacidade Normalmente em bytes ou palavras Palavra: normalmente é igual ao no. de bits usados para representar um inteiro e ao tamanho da instrução Unidades endereçáveis: em alguns sistemas, a unidade endereçável é a palavra 10 Características Fundamentais Unidade de transferência Memória principal: é o no. de bits lidos ou escritos na memória de um só vez (não precisa ser igual a uma palavra) Memória externa: normalmente são transferidos em unidades muito maiores que uma palavra e esta são chamadas de blocos Método de acesso Sequencial Direto Aleatório Associativo 11 Características Fundamentais Método de acesso Sequencial Os dados são organizados em registros sequenciais. Exemplo: fitas magnéticas Registro físico Trilha 01 Trilha 02 Trilha 03 Trilha 04 Trilha 05 Trilha 06 Trilha 07 Trilha 08 Trilha 09 (bit de paridade) Espaço entre registros O tempo de acesso é variável 12 Características Fundamentais Método de acesso direto Cada bloco de dados possui um endereço único, baseado na localização física O acesso é feito através do acesso direto a uma vizinhança genérica do registro, e em seguida por uma busca sequencial O tempo de acesso é variável Exemplo: HD Movimento do braço Movimento do disco Dado buscado (trilha 02, setor 25) 13 Características Fundamentais Método de acesso aleatório Cada posição de memória possui um endereço único O tempo de acesso a uma posição é constante, sendo independente dos acessos anteriores Exemplos: Memória principal e alguns sistemas de memória cache acesso endereços 000 001 010 011 ... 111 P1 P2 P3 P4 ... P8 14 Características Fundamentais Método de acesso associativo Tipo de acesso aleatório que compara simultaneamente certo número de bits de uma palavra com todas as palavras da memória, determinando quais delas contêm o mesmo padrão de bits Uma palavra é buscada com base em parte de seu conteúdo, e não de acordo com o seu endereço Exemplo: Memórias cache 15 Características Fundamentais Desempenho Tempo de Acesso (latência) Tempo de ciclo de memória Taxa de transferência 16 Características Fundamentais Desempenho (Tempo de Acesso) Em memórias de acesso aleatório Tempo decorrido desde o instante em que um endereço é apresentado à memória até o momento em que os dados são armazenados ou se tornam disponíveis para utilização Em memórias de acesso não-aleatório Tempo gasto para posicionar o mecanismo de leitura-escrita na posição desejada 17 Características Fundamentais Desempenho (Tempo de ciclo de memória) Aplicável principalmente às memórias de acesso aleatório Compreende o tempo de acesso e o tempo adicional requerido antes que um segundo acesso possa ser iniciado O tempo adicional é necessário para o desaparecimento de transientes nas linhas de sinal Esse tempo refere-se ao barramento do sistema e não ao processador 18 Características Fundamentais Desempenho (Taxa de transferência) Taxa na qual os dados podem ser transferidos de ou para a unidade de memória Para memórias de acesso aleatório: 1/(tempo de ciclo) Para memórias de acesso não-aleatório: TN = TA+(n/R), em que: T = tempo médio para ler ou escrever N bits; N T = tempo de acesso médio A n = número de bits R = taxa de transferência em bits por segundo (bps) 19 Características Fundamentais Tecnologia As mais comuns são memória semicondutora Memória de superfície magnética Disco ou fita Óptica RAM CD e DVD Magneto-óptica Bolha e holograma 20 Características Fundamentais Características físicas Volátil: a informação se deteriora naturalmente ou se perde quando a energia elétrica é desligada (semicondutora) Não volátil: a informação uma vez gravada permanece sem deterioração até que seja deliberadamente mudada (superfície magnética ou semicondutora) Não apagável: memória somente leitura (ROM) 21 Memória Cache Todos os sistemas de memória atuais contemplam uma memória cache Uma memória principal grande e lenta é combinada com uma memória cache pequena e rápida 22 Memória Cache 23 Referências • STALLINGS, W. Arquitetura e organização de computadores: projeto para o desempenho. 8. ed. Prentice Hall, 2009. • DELGADO, J.; RIBEIRO, C. Arquitetura de Computadores. 2 ed. LTC, 2009. • PATTERSON, D. A. ; HENNESSY, J.L. Organização e projeto de computadores – a interface hardware software. 3. ed. Editora Campus, 2005. 24