Memória 21/05/2010. Introdução. Hierarquia de Memória. Hierarquia de Memória. Arquitetura de Computadores

Tamanho: px
Começar a partir da página:

Download "Memória 21/05/2010. Introdução. Hierarquia de Memória. Hierarquia de Memória. Arquitetura de Computadores"

Transcrição

1 Introdução Arquitetura de Computadores Profa. Delfa H. Zuasnábar A memória pode ser definida como um local para armazenamento de informações, onde as duas únicas ações possíveis são a leitura e a escrita. As informações são representadas em conjuntos de bytes, cada um possuindo um único endereço numérico definido. Em um sistema computacional, temos diferentes tipos de memórias, para diferentes finalidades, que se interligam de forma estruturada e que formam o subsistema de memória. Hierarquia de Hierarquia de Os usuários querem memórias grandes e velozes, mas elas são caras. Registradores Custo, Velocidade Possível solução: Fazer com que a memória pareça ser grande e veloz a um custo razoável Hierarquia de Inclusiva: cada nível é um sub-conjunto do nível inferior O desempenho depende das taxas de acerto (hit rates) cache principal (física) auxiliar (virtual) empo de Acesso, Capacidade 1

2 Hierarquia de ecnologias Os contidos num nível mais próximo do processador são sempre um sub-conjunto dos contidos no nível anterior. O nível mais baixo contém a totalidade dos. secundária principal Processador (Cache L1 e Registradores) Cache L2 DRAM (Dynamic Random Access Memory): Valor é armazenado com uma carga em um capacitor que deve ser periodicamente atualizado. Por isso é chamada dinâmica. Muito pequeno 1 transistor por bit. De 5 a 10 vezes mais lento que a SRAM Usada para memória principal SRAM (Static Random Access Memory): Valor é armazenado em um par de portas lógicas indefinidamente, enquanto houver energia. Por isso é chamada estática Muito rápida, mas toma mais espaço que a DRAM 4 a 6 transistores por bit Usada para memória cache Localidade Localidade Localidade: estatística de comportamento do acesso aos da memória. Se um item é referenciado, Ele tende a ser referenciado em breve novamente Os itens na sua vizinhança também o serão O princípio de localidade faz com que a hierarquia de memória funcione na prática. Localidade temporal: Um item referenciado tende a ser referenciado novamente em um curto espaço de tempo Ex: loops Localidade espacial: Os itens próximos na memória a um item referenciado tendem a ser também referenciados Ex: matrizes e estruturas 2

3 Cache Cache rápida e de pequena capacidade Guarda somente os itens que serão referenciados com freqüência em determinado momento ransferência de words ransferência de blocos Para tal, explora os conceitos de Localidade emporal e de Localidade Espacial ais itens podem ser tanto, como instruções. CPU Cache Principal Cache :: erminologia Cache :: erminologia Sejam dois níveis adjacentes na hierarquia de memória: Nível superior Nível inferior próximo à CPU longe da CPU Bloco menor unidade de transferidos de um nível inferior para a cache Hit ocorre quando o dado requisitado pelo processador se encontra na memória cache Miss ocorre quando o dado requisitado pelo processador não se encontra na memória cache, sendo necessário lê-lo do nível inferior. Hit rate porcentagem de hits ocorridos em relação ao total de acessos à memória. Miss rate porcentagem de misses ocorridos em relação ao total de acessos à memória. Igual a 1-hit rate. Hit time tempo para determinar se o acesso é um hit + tempo para acessar e entregar o dado de um nível inferior para a CPU. Miss penalty tempo para determinar se o acesso é um miss + tempo para substituir o bloco no nível inferior + tempo de entregar o bloco á CPU. 3

4 Quatro Perguntas Básicas sobre a Hierarquia de 1 Posicionamento do bloco :: Esquemas de endereçamento 1. Posicionamento do bloco. Onde o bloco deve ser colocado na memória de nível mais alto? 2. Identificação do bloco. Como bloco é encontrado na memória de nível mais alto? 3. Substituição de bloco. Quais blocos serão trocados em um miss? 4. Estratégia de gravação. O que acontece em uma escrita? Mapeamento direto (directed-mapped) Cada bloco pode ser colocado em uma única posição na cache otalmente associativa (fully associative) Cada bloco pode ser colocado em qualquer posição na cache Parcialmente associativa (n-way set-associative) Cada bloco pode ser colocado em um conjunto restrito de posições na cache. 1 Posicionamento do bloco :: Esquemas de endereçamento 1 Posicionamento do bloco :: Esquemas de endereçamento Cada word é constituída de 4 bytes (= 2²). O endereço da word é a parte invariante dos endereços dos bytes. 1 byte 1 byte 1 byte 1 byte Set no. 0 1 Block no Block no Block no Cache otalmente Associativa Mapeamento direto (12 % 8) = 4 Parc. associativa (12 % 4) = Set Block no Memory 4

5 /05/ Posicionamento do bloco :: Mapeamento direto 1 Posicionamento do bloco :: Mapeamento completamente associativo Endereço no bloco de cache (índice) = endereço no bloco de memória % tamanho da cache Cada bloco da memória principal pode ser alocado em qualquer posição da cache. Bloco Cache A busca por um bloco é feita ao mesmo tempo em paralelo em todas as entradas da cache. Principal :: Mapeamento completamente associativo Cache Principal Posicionamento do bloco :: Mapeamento parcialmente associativo Cada bloco pode ser colocado em um conjunto restrito de posições. Um conjunto é um grupo de blocos na cache. Endereço no bloco de cache (índice) = Um bloco é mapeado: Endereço no bloco de memória Primeiramente, em um conjunto No. de conjuntos na cache Depois, inserido em qualquer lugar desse conjunto % 5

6 1 Posicionamento do bloco :: Mapeamento parcialmente associativo Se há n blocos em um conjunto, o posicionamento da cache é chamado associativo de conjunto de n vias. Note que a cache de mapeamento direto é simplesmente uma cache associativa de conjunto de uma via. A cache completamente associativa pode ser imaginada como uma cache que contém um único conjunto. 1 Posicionamento do bloco :: Mapeamento parcialmente associativo A busca por um bloco é feita ao mesmo tempo em paralelo em todas as entradas da cache dentro de um conjunto. Aumento do grau de associatividade Aumenta o tamanho dos conjuntos Reduz o miss rate Aumenta o tempo de hit por causa da busca paralela :: Mapeamento parcialmente associativo 4 vias Cache 0 1 índice Principal :: Mapeamento parcialmente associativo 2 vias Cache índice Principal

7 1 Posicionamento do bloco :: Mapeamento direto Em processadores Blackfin: Cache de : 2-way set-associative Cache de instruções: 4-way set-associative Lembre-se: o número de vias aumenta o número de locais na cache onde o conteúdo de cada endereço de memória pode ser colocado. Assim, faz mas sentido ter mais locais para instruções, onde saltos e desvios abrem maior intervalo de endereçamento. Endereço no bloco de cache = Principal endereço no bloco de memória % tamanho da cache Cache :: Mapeamento direto Se o tamanho da cache = 2 m, endereço (índice) da cache = m bits mais baixos de um endereço de memória de n bits. n = Principal tamanho da cache = 2 2 words m = 2 Cache :: Mapeamento direto Os (n-m-2) bits restantes do endereço de memória são usados como tag bits em cada bloco da cache. Os tag bits servem para identificar de que parte da memória principal veio o bloco copiado para a cache. Endereço de memória 31 n-m-2 ag m Índice 1 0 Word 7

8 Cache 21/05/2010 :: Acessando na cache :: Acessando na cache Além de armazenar, a memória cache reserva espaço para armazenar os bits de tag e o bit de validade. Por convenção, porém, conta-se apenas o campo de. O bit de validade serve para reconhecer se um bloco de cache é válido. Por exemplo, quando o processador é iniciado, a cache não contém válidos e os campos do tag não terão significado. Endereço da memória principal: 31 n-m-2 ag 1 0 Dados guar em cache, endereçados por cada índice: m Índice Word Valid ag Dados :: Acessando na cache Cada bloco da cache é endereçado (identificado) por um índice, que corresponde aos bits menos significativos do endereço de memória. :: Acessando na cache Endereço de memória 31 ag Índice Byte Índice 4 Índice 3 Índice 2 1K linhas Índice 1 Valid ag Dados Valid ag Bloco de (32 bits) 8

9 Cache 21/05/2010 :: Acessando na cache :: Acessando na cache O tamanho do bloco até agora era de uma word. Normalmente, têm-se blocos de várias words. ransferência de words ransferência de blocos CPU Cache Principal Valid ag Bloco de (128 bits) :: Acessando na cache :: Exemplo :: Acessando na cache :: Exemplo Considere: Uma máquina com espaço de endereçamento de 32 bits Uma memória cache de 64 KB Blocos de 4 words Mapeamento direto Quantos bits são necessários no total para implementar tal cache? Endereço de memória 31 ag Índice MUX 4K linhas Valid ag Bloco de (128 bits) 9

10 :: Acessando na cache :: Exemplo Cada linha da figura anterior (bloco) contém: 1 bit de validade x bits de tag Blocos de de 128 bits (4 words) Como encontrar o número de tag bits (x)? 32 bits de endereço na memória principal 2 bits de offset de byte 2 bits de endereçamento do bloco 64/16 K = 4 K = bits de índice tag bits: = 16 bits :: Acessando na cache :: Exemplo Cada linha (bloco) contém: 1 bit de validade 16 bits de tag Blocos de de 128 bits (4 words) = 145 bits por bloco amanho total: no. de blocos bits/bloco 4 K 145 bits = 580 Kbits ou 72,5 KB para uma cache de 64 KB de :: Associatividade :: Associatividade cache associativa de conjunto de 4 vias cache associativa de conjunto de 1 via (mapeamento direto) Índice de bloco ag Dados cache associativa de conjunto de 2 vias Conjunto ag Dados ag Dados Conjunto D 0 1 D D cache associativa de conjunto de 8 vias (totalmente associativa) D D D D D D D D D 10

11 :: Associatividade :: Exemplo :: Associatividade :: Exemplo Considere uma memória cache com capacidade para 2 14 bytes Cada bloco possui 8 words. O tamanho do campo tag varia conforme o esquema de posicionamento de bloco utilizado: mapeamento direto parcialmente associativo totalmente associativo ag Endereço de memória Índice Word offset 18 bits bits bits bits bits Byte offset Mapeamento direto Associativa de 2 vias Associativa de 4 vias Associativa de 128 vias Associativa de 256 vias 27 bits 3 2 otalmente associativa 3 Substituição do bloco :: Falhas de Cache Uma falha de cache (ou miss) ocorre quando o processador requisita que não estão presentes na memória cache. Nesse caso, o processador congela seu funcionamento (stall), até que a memória cache busque no nível inferior o dado requisitado. 3 Substituição do bloco :: Falhas de Cache Mapeamento direto: somente o bloco não encontrado é substituído, simplificando o hardware. No caso das caches organizadas associativamente, há muitos blocos dentro de um mesmo conjunto a escolher no caso de uma falha. Qual deles substituir? rês estratégias são comumente empregadas: Aleatória Menos recentemente usado (LRU) Primeiro a entrar, primeiro a sair (FIFO) 11

12 3 Substituição do bloco :: Estratégias de seleção 3 Substituição do bloco :: Estratégias de seleção Aleatória o bloco a substituir é escolhido aleatoriamente. Menos recentemente usado (LRU) substitui-se o bloco que não é usado há mais tempo. Primeiro a entrar, primeiro a sair (FIFO) substitui-se o bloco mais antigo (ainda que tenha sido recentemente usado). Substituição aleatória é a estratégia mais simples de ser implementada em hardware. À medida que o número de blocos a controlar aumenta (aumento de associatividade), a LRU se torna cada vez mais dispendiosa. Normalmente implementa-se uma aproximação da LRU. 3 Substituição do bloco :: Falhas de Cache 3 Substituição do bloco :: Falhas de Cache :: Exemplo Aumentar o tamanho de bloco normalmente diminui a taxa de falhas (miss rate), pois blocos maiores exploram a propriedade de localidade espacial. Mas a taxa de falhas pode subir novamente se o tamanho do bloco se tornar uma fração significativa do tamanho de cache. O número de blocos que pode ser armazenado na cache se tornará pequeno e haverá uma competição entre esses blocos. Assim, um bloco pode ser retirado da cache antes que muitas de suas words sejam utilizadas. V ag Dados V ag Dados Aumento do tamanho de bloco 12

13 3 Substituição do bloco :: Falhas de Cache O aumento do tamanho do bloco também aumenta o custo de uma falha (miss). O custo de uma falha está associado ao tempo necessário para se transferir um bloco do nível inferior e carregá-lo na cache. Quanto maior o bloco, mais têm de ser transferidos e maior será o tempo de transferência. :: Leitura Escrita de Leituras dominam os acessos à cache: odos os acessos às instruções são de leitura Maioria das instruções não grava na memória É fácil tornar o caso comum (leitura) mais rápido: Dados podem ser lidos enquanto sua tag é verificada Se a tag for válida, ganha-se tempo Se a tag não for válida, fica no mesmo As gravações não permitem esse recurso, requerendo validação da tag antes da escrita :: Escrita de :: Escrita de Dois modos de escrita de : Write-through A informação é escrita tanto para o bloco da cache quanto para a memória de nível mais baixo. Write-back A informação é escrita somente para o bloco da cache. Este bloco só escrito na memória de nível inferior quando for trocado. Write-through Processador Cache de Principal atualizado ao mesmo tempo Write-back Processador Cache de Principal atualizado na reposição de bloco 13

14 :: Vantagens Write-back Words individuais podem ser gravadas pelo processador na velocidade da cache (mais rápida) Múltiplas gravações dentro de um bloco requer somente uma gravação no nível inferior Write-hrough Falhas de leitura consomem menos tempo, pois não requer gravação no nível mais baixo É mais fácil de ser implementado :: Desvantagens Write-back Aumenta a penalidade de falha (miss), pois o processador deverá esperar a atualização da memória antes de gravar na cache. Mais complexo de implementar. Write-hrough Várias escritas no mesmo bloco implicam em várias escritas na memória principal. As escritas são feitas à velocidade da memória principal e não à da cache. :: Hit/Miss na Escrita de Esquema Write-through Hit de escrita: substituir o dado na cache e na memória em cada hit, para evitar inconsistência. Miss de escrita: escrever palavra na cache e na memória (obviamente, não há necessidade de buscar da memória a palavra que gerou o miss). :: Hit/Miss na Escrita de Esquema Write-through Esquema lento, pois sempre exige acesso à memória Desempenho é melhorado com um buffer de escrita. As palavras são armazenadas enquanto esperam ser escritas na memória. O processador continua execução das demais instruções. Buffer pode não ser suficiente caso tenha-se várias instruções de escrita. Nesse caso, o processador congela, até liberação do buffer. 14

15 :: Miss na Escrita de (W) :: Miss na Escrita de (W) Buffer Processador? Cache de Processador Cache de Sem buffer de escrita. Principal Para o processador não precisar aguardar transferência de com níveis inferiores de memórias, utiliza-se um buffer. Principal P :: Hit/Miss na Escrita de :: Hit/Miss na Escrita de Esquema Write-back Hit de escrita: Bloco é escrito somente na cache. Um bit de status (dirty bit) indica se um certo bloco da cache foi ou não modificado. Caso tenha-se de reescrever um bloco da cache, o valor do bloco atual só é atualizado na memória de nível inferior se dirty bit = 1. Se o bloco estiver limpo, não há necessidade de gravá-lo de volta na memória, pois os são idênticos. Esquema Write-back Miss de escrita: Se o bloco presente na cache estiver sujo, da CPU são escritos em um buffer até que a memória seja atualizada. Se o bloco estiver limpo, grava-se direto na cache. 15

16 Buffers System bus 21/05/2010 :: Miss na Escrita de (WB) :: Miss na Escrita de (WB) Buffer novo Address bus Processador? Cache de Principal CPU Data bus Cache Principal substituído :: Instruções Políticas de gravação não são aplicáveis a caches de instruções, pois modificações de código durante o tempo de execução não constituem um modelo de programação típico. Portanto, estratégias de gravação são implementadas apenas em caches de. :: Aplicações Write-back Servidores, por consumir menos largura de banda de memória Sistemas embutidos, por poupar energia ao deixar de utilizar menos recursos de hardware para escrita de Write-hrough Dispositivos com múltiplo processamento, onde ambos compartilham uma memória comum. 16

17 :: Miss na Escrita de Uma vez que, durante uma escrita, não é necessário que os estejam na cache, existem duas opções em uma falha de escrita: Write allocate o bloco é copiado na cache durante uma falha de escrita, seguindo as mesmas ações de uma falha de leitura. No-write allocate nesta alternativa pouco usual, as falhas de escrita não afetam a cache. O bloco somente é modificado na memória de nível inferior. :: Miss na Escrita de :: Exemplo Considere uma cache totalmente associativa, com esquema writeback que começa vazia. Considere as seguintes operações na memória (endereços entre colchetes): WriteMem[100] WriteMem[100] Read Mem[200] WriteMem[200] WriteMem[100] Qual o número de hits e misses nos esquemas write allocate e nowrite allocate? :: Miss na Escrita de :: Exemplo Resumo :: Categorias de falhas No-Write allocate WriteMem[100] WriteMem[100] Read Mem[200] WriteMem[200] WriteMem[100] miss miss miss hit miss Write allocate WriteMem[100] WriteMem[100] Read Mem[200] WriteMem[200] WriteMem[100] miss hit miss hit hit Falhas compulsórias (partida a frio) Causadas pelo primeiro acesso a um bloco que nunca esteve na cache. Falhas de capacidade Causadas pelo tamanho finito da cache. Ocorrem quando um bloco substituído é novamente acessado. Falhas de conflito (colisão) Ocorrem em caches não totalmente associativas. Causadas pela competição de diversos blocos por um mesmo conjunto. São eliminadas por uma cache totalmente associativa de mesmo tamanho. 17

18 Resumo :: Desafios de projeto Mudança de projeto Aumentar o tamanho da cache Efeito sobre a taxa de falhas Diminui as falhas de capacidade Possível efeito negativo sobre o desempenho Pode aumentar o tempo de acesso X é mais rápida que y x é n vezes mais rápida que y exec y exec x n Aumentar o grau de associatividade Aumentar o tamanho do bloco Diminui as falhas de conflito Diminui as falhas compulsórias (localidade espacial) Pode aumentar o tempo de acesso Aumentar a penalidade de falha. Blocos muito grandes podem aumentar a taxa de falhas endo em vista que o tempo de execução é o inverso do desempenho: 1 exec y Desempenho y Desempenho x n 1 execx Desempenho y Desempenho x O throughput de x é 1,3 vezes mais rápido que o y, significa que o número de tarefas completadas por unidade de tempo na máquina x é 1,3 vezes o número de tarefas concluídos em y. Como o desempenho e o tempo de execução são inversos um de outro o aumento de desempenho diminui o tempo de execução. melhorar o desempenho quando queremos nos referir a aumentar o desempenho e diminuir o tempo de execução. Equação de desempenho da CPU odos os computadores são construídos com o uso de clock que funciona a velocidade constante. Chamados de pulsos, ciclos,etc. Os projetistas de computadores se referem ao tempo de um período de clock por sua declaração, (exem: 1 ns) ou por sua velocidade (exem: 1 GHz)o tempo da CPU pode ser expresso de 2 modos: CPU CPU CPU clock CPU velocidade do clock 18

19 Além dos ciclos de clock necessários para executar um programa, também podemos contar o número de instruções executadas, o comprimento do caminho das instruções ou contagem de instruções (IC-Instruction Count). Se soubemos o número de ciclos de clock e a contagem de instruções podemos calcular o número médio de ciclos de clock por instrução CPI. CPU CPI IC ranspondo-se a IC na fórmula, os ciclos de clock podem ser definidos como IC x CPI. Isso nos permite usar o CPI na fórmula do tempo de execução. IC clock CPU Velocidade de clock A expansão da 1 fórmula para as unidades de medida e a inversão da velocidade de clock mostra como as peças se juntam. Instruções ciclos de clock segundos programa instrução ciclos de clock segundos programa CPU Esta fórmula demonstra que o desempenho da CPU depende de: Ciclo de clock velocidade Ciclo de clock instrução Contagem de instruções Além disso, o tempo de CPU é igualmente depende dessas características: uma melhoria de 10% em qualquer uma delas leva a uma melhoria de 10% no tempo da CPU. Infelizmente é difícil alterar um único parâmetro isolando-os por completo de outros porque as tecnologias básicas envolvidas na alteração de cada característica são interdependentes. empo de ciclo de clock ecnologia de hardware e organização CPI organização e arquitetura do conjunto de instruções. Contagem de Instruções Arquitetura do conjunto de instruções e tecnologia de compiladores. 19

20 O tempo de execução é a medida mais importante na análise sobre desempenho exec clock Com novos conhecimentos sobre caches, podemos expandir a equação anterior para: Onde: exec ( ) CPU mem clock CPU corresponde ao número de ciclos gastos estritamente pela execução das instruções na CPU mem corresponde ao número de ciclos gastos aguardando-se a correção de falhas (misses) na memória cache. Em outras palavras, podemos dividir o tempo de execução em: Ciclos de clock que o processador gasta com as instruções do programa ( CPU ) Ciclos de clock que o processador gasta aguardando pelo sistema de memória ( mem ) O número de ciclos gastos pela CPU aguardando o sistema de memória pode ser dividido em: Ciclos de parada para leitura ( read ) ou escrita ( write ) mem read write Consideremos que os acertos (hits) estão incluídos em CPU e que mem computa apenas as falhas de acesso (misses). Ciclos de parada para ( ) ou instruções ( instr ) mem instr 20

21 :: Paradas de leitura Note que os acessos read e write são complementares entre si, assim como os acessos e instruções. mem read, instr read, write Número total de ciclos gastos com parada de leitura read N falha, read falha, read Número absoluto de falhas de leitura Número de ciclos gastos com uma falha de leitura (penalidade) Normalmente, não se tem disponível o número absoluto de falhas de leitura, mas: Número total de leituras (N read ) axa (ou porcentagem) de falha entre leituras (x falha,read ) read Nread x falha, read falha, read :: Paradas de escrita O mesmo raciocínio se aplica para falhas de escrita: write Nwrite x falha, write falha, write Em muitas implementações de cache, as penalidades de leitura e escrita são as mesmas (tempo para buscar o bloco da memória de nível inferior), de forma que: mem Nacessos x falha, acesso falha O número de ciclos de parada por memória depende do número de erros e do custo por erro, denominado penalidade de erro. mem Número de erros ( falhas) Penalidade de erro mem mem erros( falhas) IC Penalidade de erro instrução Acesso à memoria IC x instrução erros Penalidade de erro 21

22 :: Exemplo 1 O número de ciclos de parada por memória depende do número de erros e do custo por erro, denominado penalidade de erro. mem Número de erros ( falhas) Penalidade de erro mem mem erros( falhas) IC Penalidade de erro instrução Acesso à memoria IC x instrução erros Penalidade de erro Para uma certa máquina rodando um certo programa, assuma o seguinte: axa de falhas (miss rate) de instrução é 2% axa de falhas (miss rate) de é 4% Penalidade de falha é sempre de 40 ciclos CPI é 2 (sem contar as esperas por memória) Freqüência de load/stores é de 30% das instruções :: Exemplo 1 Pergunta-se: A. O quão rápida é uma máquina com cache perfeito, na qual não ocorrem falhas (misses)? B. O quão rápida essa máquina é em relação a uma máquina sem cache (100% de falha)? :: Exemplo 1 :: A Seja IC o número de instruções do programa: oda instrução requer um acesso de leitura para ser buscada na memória. Número de ciclos gastos com falha de instruções: instr IC x falha, instr falha, instr IC 0, , 8 IC Somente 30% das instruções acessam a memória. Número de ciclos gastos com falha de : 0,30 IC x falha, falha, 0,30 IC 0, , 48 IC 22

23 :: Exemplo 1 :: A :: Exemplo 1 :: B Portanto, o número de ciclos gastos com espera pela memória ( mem ) é: mem instr 0,8IC 0,48IC 1, 28IC B. O quão rápida essa máquina é em relação a uma máquina sem cache (100% de falha)? Relação de desempenho entra a máquina real (com cache miss) e a máquina ideal (sem cache miss): exec, real exec, ideal ( CPU CPU mem ) clock clock ( IC 2 IC 1,28) 2 1,28 1,64 IC 2 2 :: Exemplo 1 :: B instr IC x falha, instr falha, instr IC IC IC % x falha, falha, exec,100% exec, real IC 0, IC ( ) IC (2 0,8 0,48) IC clock clock 16,5 Caches Multi-Nível Uma possível solução para redução da penalidade de falha é adicionar um segundo nível de cache. A cache primária (L1) é colocada no mesmo chip do processador. A cache de nível 2 (L2) é implementada com SRAMs e intermedeia os acessos entre a memória principal e a cache de nível 1. 23

24 Caches Multi-Nível Caches Multi-Nível :: Exemplo Se uma falha ocorre na cache de nível 1, a cache de nível 2 é acessada. Se o dado é encontrado na cache de nível 2, a penalidade de falha é bem menor que o tempo necessário para acessar a memória principal. Se a falha também ocorre na cache de nível 2, a penalidade de falha é maior, pois demanda acesso à memória principal. Considere uma máquina de 500 MHz com: CPI base de 1 empo de acesso a memória principal 200 ns. axa de falhas de acesso à memória de 5% Qual a melhoria obtida se adicionarmos uma cache de nível 2 com tempo de acesso de 20 ns, e taxa de falhas de 10%? Caches Multi-Nível :: Exemplo Período de clock ( clock ): clock = 1 / 500 MHz = 2 ns por ciclo de clock Caches Multi-Nível :: Exemplo Penalidade de falha para dois níveis de cache: Penalidade de falha para a principal ( falha ): falha = 200 ns / 2 ns = 100 ciclos de clock empo de execução com um nível de cache: exec ( ) CPU mem clock ( IC 1 IC 0,05100) exec clock 6 IC exec clock CPU acesso miss miss Cache L1 Penalidade 20 ns Cache L2 Penalidade 200 ns Principal 24

25 Caches Multi-Nível :: Exemplo Penalidade de falha da L2 em número de ciclos: falha = 20 ns / 2 ns = 10 ciclos de clock empo de execução para com dois níveis de cache: exec ( CPU L2 MP) clock (1 0,0510 0,1 0,05100) IC clock 2 IC clock Comparando o desempenho das duas organizações, temos: 6 / 2 = 3 Cache intermediária acelerou o tempo de execução em três vezes 25

Hierarquia de Memória. Sistemas de Computação André Luiz da Costa Carvalho

Hierarquia de Memória. Sistemas de Computação André Luiz da Costa Carvalho Hierarquia de Memória Sistemas de Computação André Luiz da Costa Carvalho 1 Introdução l Pode ser definida como um local para armazenamento de informações, onde as duas únicas ações possíveis são a leitura

Leia mais

Organização e Arquitetura de Computadores. Ivan Saraiva Silva

Organização e Arquitetura de Computadores. Ivan Saraiva Silva Organização e Arquitetura de Computadores Hierarquia de Memória Ivan Saraiva Silva Hierarquia de Memória A Organização de Memória em um computador é feita de forma hierárquica Registradores, Cache Memória

Leia mais

Memória Cache. Aula 24

Memória Cache. Aula 24 Memória Cache Aula 24 Introdução Objetivo: oferecer o máximo de memória disponível na tecnologia mais barata, enquanto se fornece acesso na velocidade oferecida pela memória mais rápida Velocidade CPU

Leia mais

Hierarquia de Memória

Hierarquia de Memória Hierarquia de Memória Organização da cache AC1 Hierarquia da Memória: Organização 1 Mapeamento Directo A cada endereço de memória corresponde apenas uma linha da cache. linha = resto (endereço do bloco

Leia mais

Princípio da Localidade Apenas uma parte relativamente pequena do espaço de endereçamento dos programas é acessada em um instante qualquer Localidade

Princípio da Localidade Apenas uma parte relativamente pequena do espaço de endereçamento dos programas é acessada em um instante qualquer Localidade Memória Cache Princípio da Localidade Apenas uma parte relativamente pequena do espaço de endereçamento dos programas é acessada em um instante qualquer Localidade Temporal Um item referenciado tende a

Leia mais

SSC0611 Arquitetura de Computadores

SSC0611 Arquitetura de Computadores SSC0611 Arquitetura de Computadores 5ª e 6ª Aulas Revisão de Hierarquia de Memória Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br 1 Memória Memória Todo componente capaz de armazenar bits de informação

Leia mais

Capítulo 7 Sistemas de Memória. Ch7a 1

Capítulo 7 Sistemas de Memória. Ch7a 1 Capítulo 7 Sistemas de Memória Ch7a 1 Memórias: Revisão SRAM (Static RAM): Valor é armazenado por meio da interligação de um par de inversores Rápido, mas consome mais espaço que DRAM (4 a 6 transistores)

Leia mais

Infraestrutura de Hardware. Explorando a Hierarquia de Memória

Infraestrutura de Hardware. Explorando a Hierarquia de Memória Infraestrutura de Hardware Explorando a Hierarquia de Memória Perguntas que Devem ser Respondidas ao Final do Curso Como um programa escrito em uma linguagem de alto nível é entendido e executado pelo

Leia mais

Prof. Frank Sill Torres DELT Escola de Engenharia UFMG

Prof. Frank Sill Torres DELT Escola de Engenharia UFMG Sistemas, Processadores e Periféricos Aula 7 - Revisão Prof. Frank Sill Torres DELT Escola de Engenharia UFMG Adaptado a partir dos Slides de Organização de Computadores 2006/02 do professores Leandro

Leia mais

Infraestrutura de Hardware. Explorando Desempenho com a Hierarquia de Memória

Infraestrutura de Hardware. Explorando Desempenho com a Hierarquia de Memória Infraestrutura de Hardware Explorando Desempenho com a Hierarquia de Memória Perguntas que Devem ser Respondidas ao Final do Curso Como um programa escrito em uma linguagem de alto nível é entendido e

Leia mais

ELECTRÓNICA DE COMPUTADORES. Sumário

ELECTRÓNICA DE COMPUTADORES. Sumário ELTRÓNICA DE COMPUTADORES Aulas nº14 e15 Memórias tampão (s) 12.1 Sumário Princípio da localidade espacial e temporal Organização das caches s de dados: políticas de escrita e estratégias de alocação Interligação

Leia mais

SSC0112 Organização de Computadores Digitais I

SSC0112 Organização de Computadores Digitais I SSC0112 Organização de Computadores Digitais I 20ª Aula Hierarquia de memória Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br 1 Princípios básicos Definição: Tamanho da cache Tamanho do bloco Função de

Leia mais

Arquitetura e Organização de Processadores. Aulas 9 e 10. Memória cache

Arquitetura e Organização de Processadores. Aulas 9 e 10. Memória cache Universidade Federal do Rio Grande do Sul Instituto de Informática Programa de Pós-Graduação em Computação Arquitetura e Organização de Processadores Aulas 9 e 10 Memória cache Tendências tecnológicas

Leia mais

Memórias cache: uma introdução

Memórias cache: uma introdução Memórias cache: uma introdução João Canas Ferreira Dezembro de 2006 Contém figuras de Computer Architecture: A Quantitative Approach, J. Hennessey & D. Patterson, 3ª. ed., MKP 2006 AAC (FEUP/MIEIC) Memórias

Leia mais

Sistemas de Memória. CES-25 Arquiteturas para Alto Desmpenho. Paulo André Castro

Sistemas de Memória. CES-25 Arquiteturas para Alto Desmpenho. Paulo André Castro Sistemas de Memória Arquiteturas para Alto Desmpenho Prof. pauloac@ita.br Sala 110 Prédio da Computação www.comp.ita.br/~pauloac Memória: O Gargalo de Von Neuman Memória principal: considerada como sendo

Leia mais

SSC0112 Organização de Computadores Digitais I

SSC0112 Organização de Computadores Digitais I SSC0112 Organização de Computadores Digitais I 18ª Aula Hierarquia de memória Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br 1 Memória Cache Método de Acesso: Associativo Localização de dados na memória

Leia mais

Organização de Computadores

Organização de Computadores Organização de Computadores Aula 21 Memória Cache Rodrigo Hausen 21 de outubro de 2011 http://cuco.pro.br/ach2034 1/49 Apresentação 1. Bases Teóricas 2. Organização de computadores... 2.2. Execução de

Leia mais

Universidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Bacharelado em Ciência da Computação.

Universidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Bacharelado em Ciência da Computação. Universidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Bacharelado em Ciência da Computação Organização e Arquitetura de I Organização e Arquitetura Básicas B de (Parte II)

Leia mais

Arquitetura de Computadores. Hierarquia de Memória. Prof. Msc. Eduardo Luzeiro Feitosa

Arquitetura de Computadores. Hierarquia de Memória. Prof. Msc. Eduardo Luzeiro Feitosa Arquitetura de Computadores Hierarquia de Memória Prof. Msc. Eduardo Luzeiro Feitosa efeitosa@dcc.ufam.edu.br 1 Introdução Conteúdo Exemplo da biblioteca Princípio da localidade Hierarquia de memória Cache

Leia mais

Memória e Hierarquia de Memória. Memória Vs. Armazenamento

Memória e Hierarquia de Memória. Memória Vs. Armazenamento Memória e Hierarquia de Memória Memória Vs. Armazenamento Fichário Pasta O fichário representa o disco rígido, com alta capacidade de armazenamento. A pasta sobre a mesa representa a memória, de acesso

Leia mais

Níveis de memória. Diferentes velocidades de acesso. Memória Cache. Memórias Auxiliar e Auxiliar-Backup

Níveis de memória. Diferentes velocidades de acesso. Memória Cache. Memórias Auxiliar e Auxiliar-Backup Memória Níveis de memória Diferentes velocidades de acesso Pequeno Alto(a) Cache RAM Auxiliar Auxiliar-Backup Memória Cache altíssima velocidade de acesso acelerar o processo de busca de informações na

Leia mais

5 de Maio de Aula 15

5 de Maio de Aula 15 5 de Maio de 2005 1 Caches I Aula 15 Estrutura desta aula Hierarquia de memórias Tecnologia das memórias Fundamentos de caches Organização em blocos Colocação dos blocos Identificação dos blocos Políticas

Leia mais

Hierarquia de Memória

Hierarquia de Memória Hierarquia de Memória Introdução e Análise do Desempenho AC1 Hierarquia da Memória: Análise do Desempenho 1 Hierarquia de Memória A velocidade dos processadores tem aumentado muito mais rapidamente do

Leia mais

Hierarquia de Memória

Hierarquia de Memória No projeto de um sistema digital, deve-se ter em mente que hardware menor geralmente é mais rápido do que hardware maior. A propagação do sinal é uma das principais causas de atrasos. No caso da memória,

Leia mais

Memória Cache Prof. Rômulo Calado Pantaleão Camara. Carga Horária: 60h

Memória Cache Prof. Rômulo Calado Pantaleão Camara. Carga Horária: 60h Memória Cache Prof. Rômulo Calado Pantaleão Camara Carga Horária: 60h Memória Cache Memória Principal Vs. Cache Fichário Quadro Pasta O fichário representa o disco rígido. A pasta sobre a mesa representa

Leia mais

Memória cache segunda parte. Organização de Computadores. Aula 17. Memória cache segunda parte. 1. Mapeamento completamente associativo

Memória cache segunda parte. Organização de Computadores. Aula 17. Memória cache segunda parte. 1. Mapeamento completamente associativo Universidade Federal do Rio Grande do Sul Instituto de Informática Memória segunda parte Organização de Computadores 1. Mapeamento completamente associativo 2. Mapeamento direto 3. Mapeamento conjunto

Leia mais

Capítulo 5 Livro do Mário Monteiro Conceituação. Elementos de projeto de memória cache

Capítulo 5 Livro do Mário Monteiro Conceituação. Elementos de projeto de memória cache Capítulo 5 Livro do Mário Monteiro Conceituação Princípio da localidade Funcionamento da memória cache Elementos de projeto de memória cache Mapeamento de dados MP/cache Algoritmos de substituição de dados

Leia mais

Tempo de processador desperdiçado a fazer nada. Processor register 1 clock cycle (0.5 2 GHz) $??? DRAM semiconductor memory ns $10 $20

Tempo de processador desperdiçado a fazer nada. Processor register 1 clock cycle (0.5 2 GHz) $??? DRAM semiconductor memory ns $10 $20 Caches Cache Acesso à memória é lento Tempo de processador desperdiçado a fazer nada CPU Memória Memory technology Typical access time $ per GiB in 2012 Processor register 1 clock cycle (0.5 ns @ 2 GHz)

Leia mais

É um sinal elétrico periódico que é utilizado para cadenciar todas as operações realizadas pelo processador.

É um sinal elétrico periódico que é utilizado para cadenciar todas as operações realizadas pelo processador. Universidade Estácio de Sá Curso de Informática Disciplina de Organização de Computadores II Prof. Gabriel P. Silva - 1 o Sem. / 2005 2 ª Lista de Exercícios 1) O que é o relógio de um sistema digital?

Leia mais

FUNDAMENTOS DE ARQUITETURAS DE COMPUTADORES MEMÓRIA CACHE CONTINUAÇÃO CAPÍTULO 5. Cristina Boeres

FUNDAMENTOS DE ARQUITETURAS DE COMPUTADORES MEMÓRIA CACHE CONTINUAÇÃO CAPÍTULO 5. Cristina Boeres FUNDAMENTOS DE ARQUITETURAS DE COMPUTADORES MEMÓRIA CACHE CONTINUAÇÃO CAPÍTULO 5 Cristina Boeres Mapeamento Associativo por Conjunto! Tenta resolver o problema de conflito de blocos na mesma linha (mapeamento

Leia mais

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Organização e Arquitetura de Computadores I Memória Cache Slide 1 Introdução Tamanho Função de Mapeamento Política de Escrita Tamanho da Linha Número de Memórias Cache Cache em Níveis Slide 2 Introdução

Leia mais

Arquitetura de Computadores

Arquitetura de Computadores Departamento de Ciência da Computação Bacharelado em Ciência da Computação Arquitetura de Computadores Hierarquia de Memória Gabriel P. Silva Ementa Unidade 3: Hierarquia de Memória 3.1 Registradores 3.2

Leia mais

Cache. Cache. Direct Mapping Cache. Direct Mapping Cache. Internet. Bus CPU Cache Memória. Cache. Endereço Byte offset

Cache. Cache. Direct Mapping Cache. Direct Mapping Cache. Internet. Bus CPU Cache Memória. Cache. Endereço Byte offset -- Internet Bus Memória Fully Associative Direct Mapping Direct Mapping Direct Mapping 7 Endereço Byte offset Hit Tag Endereço Byte offset Index Block offset bits 8 bits bits bits V Tag Valid Tag K entries

Leia mais

Correção de Erros. Erros de memória de semicondutores podem ser:

Correção de Erros. Erros de memória de semicondutores podem ser: Correção de Erros Erros de memória de semicondutores podem ser: Erros graves que constitui um defeito físico permanente; Erros moderados, onde a(s) célula(s) não são capazes de armazenar os dados ou fazem

Leia mais

PCS-2529 Introdução aos Processadores. Prof. Dr. Paulo Sérgio Cugnasca

PCS-2529 Introdução aos Processadores. Prof. Dr. Paulo Sérgio Cugnasca PCS-2529 Introdução aos Processadores Prof. Dr. Paulo Sérgio Cugnasca 1 4. MEMÓRIA 2 4. MEMÓRIA A memória é um componente essencial de todo computador, sendo utilizada para armazenar as instruções a serem

Leia mais

FUNDAMENTOS DE ARQUITETURAS DE COMPUTADORES MEMÓRIA CACHE CAPÍTULO 5. Cristina Boeres

FUNDAMENTOS DE ARQUITETURAS DE COMPUTADORES MEMÓRIA CACHE CAPÍTULO 5. Cristina Boeres FUNDAMENTOS DE ARQUITETURAS DE COMPUTADORES MEMÓRIA CACHE CAPÍTULO 5 Cristina Boeres Introdução! Diferença de velocidade entre Processador e MP O processador executa uma operação rapidamente e fica em

Leia mais

Memória Cache. Memória Cache. Localidade Espacial. Conceito de Localidade. Diferença de velocidade entre Processador/MP

Memória Cache. Memória Cache. Localidade Espacial. Conceito de Localidade. Diferença de velocidade entre Processador/MP Departamento de Ciência da Computação - UFF Memória Cache Profa. Débora Christina Muchaluat Saade debora@midiacom.uff.br Memória Cache Capítulo 5 Livro do Mário Monteiro Conceituação Princípio da localidade

Leia mais

Organização e Arquitetura de Computadores

Organização e Arquitetura de Computadores Organização e Arquitetura de Computadores Hierarquia de Memória: Introdução Alexandre Amory Edson Moreno Nas Aulas Anteriores Computação Organização interna de CPU Parte operativa: Lógica combinacional

Leia mais

Memória Cache: Funcionamento

Memória Cache: Funcionamento Microcontroladores e Interfaces º Ano Eng. Electrónica Industrial Carlos A. Silva º Semestre de 5/6 http://www.dei.uminho.pt/lic/mint Assunto: Memória Cache Aula #9 9Maio6-M Memória Cache: Funcionamento

Leia mais

Sistemas de Memória II

Sistemas de Memória II Sistemas de Memória II José Costa Introdução à Arquitetura de Computadores Departamento de Engenharia Informática (DEI) Instituto Superior Técnico 2014-11-21 José Costa (DEI/IST) Sistemas de Memória II

Leia mais

Hierarquia de memória

Hierarquia de memória Hierarquia de memória Capítulo 6, Secção.{3..} Caches Slides adaptados dos slides do professor Pedro Pereira Consultar slides originais no moodle Centro de Cálculo Instituto Superior de Engenharia de Lisboa

Leia mais

Hierarquia de memória

Hierarquia de memória Hierarquia de memória Capítulo 6, Secção.{3..} Caches Slides adaptados dos slides do professor Pedro Pereira Centro de Cálculo Instituto Superior de Engenharia de Lisboa João Pedro Patriarca (jpatri@cc.isel.ipl.pt)

Leia mais

Memória Cache. Adriano J. Holanda. 12 e 16/5/2017

Memória Cache. Adriano J. Holanda. 12 e 16/5/2017 Memória Cache Adriano J Holanda 12 e 16/5/2017 Memória: princípios físicos Revisão: Hierarquia de memória; Memória RAM: estática, dinâmica; Memória ROM: PROM, EPROM, EEPROM; Memória flash Memória: fundamentos

Leia mais

Memória Virtual. Prof. M.Sc. Bruno R. Silva CEFET-MG Campus VII

Memória Virtual. Prof. M.Sc. Bruno R. Silva CEFET-MG Campus VII Prof. M.Sc. Bruno R. Silva CEFET-MG Campus VII Permitir o compartilhamento seguro e eficiente da memória entre vários programas Remover os transtornos de programação de uma quatidade pequena e limitada

Leia mais

Arquitectura de Computadores

Arquitectura de Computadores Arquitectura de Computadores Memória Cache; Memória Secundária (13.3) José Monteiro Licenciatura em Engenharia Informática e de Computadores Departamento de Engenharia Informática (DEI) Instituto Superior

Leia mais

Memória cache. Sistemas de Computação

Memória cache. Sistemas de Computação cache Sistemas de Computação Princípio da localidade Programas tendem a reutilizar dados e instruções perto daqueles que foram utilizados recentemente Localidade temporal: Itens recentemente referenciados

Leia mais

Arquitetura de Computadores. Memórias

Arquitetura de Computadores. Memórias Arquitetura de Computadores Memórias Relembrando Arquitetura de Von Neuman Memória Acesso por palavra Programas são armazenados aqui Controlador de memoria Dispositivos de entrada Dispositivos de saída

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Gerência de Memória Memória virtual Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Slides baseados nas apresentações dos prof. Tiago Ferreto e Alexandra Aguiar

Leia mais

Sequência 17 Organização e Hierarquia de Memória

Sequência 17 Organização e Hierarquia de Memória Arquitetura de Computadores Os cincos componentes clássicos do computador Sequência 17 Organização e Hierarquia de Memória Seq.17 Memórias - conceitos 1 Seq.17 Memórias - conceitos 2 Memória A memória

Leia mais

Instituto de Matemática e Estatística - USP MAC Organização de Computadores EP1. Experimentos com o cache. Tiago Andrade Togores

Instituto de Matemática e Estatística - USP MAC Organização de Computadores EP1. Experimentos com o cache. Tiago Andrade Togores Instituto de Matemática e Estatística - USP MAC0412 - Organização de Computadores EP1 Experimentos com o cache Tiago Andrade Togores - 6514230 30 de setembro de 2010 Sumário 1 Introdução 2 1.1 O que é

Leia mais

Microprocessadores. Memórias

Microprocessadores. Memórias s António M. Gonçalves Pinheiro Departamento de Física Covilhã - Portugal pinheiro@ubi.pt Arquitectura de Microcomputador Modelo de Von Neumann Barramento de Endereços µprocessador Entrada/Saída Barramento

Leia mais

ORGANIZAÇÃO DE COMPUTADORES MEMÓRIA. Prof. Dr. Daniel Caetano

ORGANIZAÇÃO DE COMPUTADORES MEMÓRIA. Prof. Dr. Daniel Caetano ORGANIZAÇÃO DE COMPUTADORES MEMÓRIA Prof. Dr. Daniel Caetano 2014-1 Objetivos Compreender o que é a memória e sua hierarquia Compreender os diferentes tipos de memória Entender como é feito o acesso à

Leia mais

Arquitectura de Computadores (ACom)

Arquitectura de Computadores (ACom) Arquitectura de Computadores (ACom) MEAer Acetatos das Aulas Teóricas Versão 4.0 - Português Aula N o 22: Título: Sumário: cache; cache por blocos; Política de substituição; Tratamento das operações de

Leia mais

Memória Cache endereço de memória

Memória Cache endereço de memória Memória Cache O modelo de Von Neumann estabelece que para ser executado, o programa deve estar armazenado na memória. A memória é organizada em grupos de bits chamados células (ou palavras), onde as informações

Leia mais

Arquitectura de Computadores

Arquitectura de Computadores Arquitectura de Computadores Hierarquia de Memória; Memória Cache (13.2 e 13.3) José Monteiro Licenciatura em Engenharia Informática e de Computadores Departamento de Engenharia Informática (DEI) Instituto

Leia mais

http://www.ic.uff.br/~debora/fac! 1 Capítulo 4 Livro do Mário Monteiro Introdução Hierarquia de memória Memória Principal Organização Operações de leitura e escrita Capacidade 2 Componente de um sistema

Leia mais

Sistemas Operacionais Gerenciamento de Memória. Carlos Ferraz Jorge Cavalcanti Fonsêca

Sistemas Operacionais Gerenciamento de Memória. Carlos Ferraz Jorge Cavalcanti Fonsêca Sistemas Operacionais Gerenciamento de Memória Carlos Ferraz (cagf@cin.ufpe.br) Jorge Cavalcanti Fonsêca (jcbf@cin.ufpe.br) Memória Física vs. Memória do Programa Memória P Física Tamanho dos softwares

Leia mais

Sistemas de Memória. CES-25 Arquiteturas para Alto Desmpenho. Paulo André Castro

Sistemas de Memória. CES-25 Arquiteturas para Alto Desmpenho. Paulo André Castro Sistemas de Memória Arquiteturas para Alto Desmpenho Prof. pauloac@ita.br Sala 110 Prédio da Computação www.comp.ita.br/~pauloac Memória: O Gargalo de Von Neuman Memória principal: considerada como sendo

Leia mais

Arquitetura e Organização de Processadores. Aula 4. Pipelines

Arquitetura e Organização de Processadores. Aula 4. Pipelines Universidade Federal do Rio Grande do Sul Instituto de Informática Programa de Pós-Graduação em Computação Arquitetura e Organização de Processadores Aula 4 Pipelines 1. Introdução Objetivo: aumento de

Leia mais

Memória. Memória Cache

Memória. Memória Cache Memória Memória Cache Revisão - Memória Principal Memória que armazena os dados e programas em linguagem de máquina em execução corrente Razoavelmente barata Tempo de acesso da ordem de nano-segundos a

Leia mais

ORGANIZAÇÃO DE COMPUTADORES CAPÍTULO4: MEMÓRIAPRINCIPAL

ORGANIZAÇÃO DE COMPUTADORES CAPÍTULO4: MEMÓRIAPRINCIPAL ORGANIZAÇÃO DE COMPUTADORES CAPÍTULO4: MEMÓRIAPRINCIPAL MEMÓRIA Componente de um sistema de computação cuja função é armazenar informações que são manipuladas pelo sistema para que possam ser recuperadas

Leia mais

Gerência de Memória. Paginação

Gerência de Memória. Paginação Gerência de Memória Paginação Endereçamento Virtual (1) Espaço de endereçamento dos processos não linearmente relacionado com a memória física Cada vez que são usados, os endereços virtuais são convertidos

Leia mais

Projeto de Caches. Projeto de memórias cache (ii)

Projeto de Caches. Projeto de memórias cache (ii) Projeto de Caches Mapeamento de endereços (hashing) [bytes] tamanho de bloco [palavras] associatividade (mais hashing) três tipos de faltas tempo médio de acesso à memória UFPR BCC CI22 26-2 projeto de

Leia mais

CEFET-RS Curso de Eletrônica

CEFET-RS Curso de Eletrônica CEFET-RS Curso de Eletrônica 3.2 - Cache Profs. Roberta Nobre & Sandro Silva robertacnobre@gmail.com e sandro@cefetrs.tche.br Cache Wait States CPU Principal Durante o processamento normal, o processador

Leia mais

ü Capítulo 4 Livro do Mário Monteiro ü Introdução ü Hierarquia de memória ü Memória Principal ü Memória principal ü Memória cache

ü Capítulo 4 Livro do Mário Monteiro ü Introdução ü Hierarquia de memória ü Memória Principal ü Memória principal ü Memória cache Departamento de Ciência da Computação - UFF Principal Profa. Débora Christina Muchaluat Saade debora@midiacom.uff.br Principal ü Capítulo 4 Livro do Mário Monteiro ü Introdução ü Hierarquia de memória

Leia mais

/17. Arquitetura de Computadores Subsistemas de Memória Prof. Fred Sauer

/17. Arquitetura de Computadores Subsistemas de Memória Prof. Fred Sauer /17 Arquitetura de Computadores Subsistemas de Memória Prof. Fred Sauer http://www.fredsauer.com.br fsauer@gmail.com 2/17 S U M Á R I O PRINCÍPIO DA LOCALIDADE Conceito : gap entre processador/memória

Leia mais

Gerência de Memória. Endereçamento Virtual (1) Paginação. Endereçamento Virtual (2) Endereçamento Virtual (3)

Gerência de Memória. Endereçamento Virtual (1) Paginação. Endereçamento Virtual (2) Endereçamento Virtual (3) Endereçamento Virtual (1) Gerência de Memória Paginação Espaço de endereçamento dos processos não linearmente relacionado com a física Cada vez que são usados, os endereços virtuais são convertidos pela

Leia mais

Experimentos com o Cache Organização de Computadores

Experimentos com o Cache Organização de Computadores Experimentos com o Cache Organização de Computadores Bruno Milan Perfetto - n o USP : 6552421 Steven Koiti Tsukamoto - n o USP : 6431089 Departamento de Ciência da Computação Instituto de Matemática e

Leia mais

Conceitos e Gerenciamento de Memória

Conceitos e Gerenciamento de Memória Conceitos e Gerenciamento de Memória Introdução Num sistema computacional, temos diferentes tipos de memórias, para diferentes finalidades, que se interligam de forma estruturada e que formam o subsistema

Leia mais

Memória cache (cont.) Sistemas de Computação

Memória cache (cont.) Sistemas de Computação Memória cache (cont.) Sistemas de Computação Memórias cache CPU procura por dados em L, depois em L2 e finalmente na memória principal CPU registradores barramento de cache L cache ALU barramento de sistema

Leia mais

Memória Cache. Walter Fetter Lages.

Memória Cache. Walter Fetter Lages. Memória Cache Walter Fetter Lages w.fetter@ieee.org Universidade Federal do Rio Grande do Sul Escola de Engenharia Departamento de Engenharia Elétrica Copyright (c) Walter Fetter Lages p.1 Introdução SRAM

Leia mais

Organização e Arquitetura de computadores. Memórias

Organização e Arquitetura de computadores. Memórias Organização e Arquitetura de computadores Memórias Introdução Funcionamento básico de um sistema microprocessado (Figura 1.10, Gabriel Torres) Programas são armazenados aqui Controlador de memoria Dispositivos

Leia mais

Memória Principal. Tiago Alves de Oliveira

Memória Principal. Tiago Alves de Oliveira Memória Principal Tiago Alves de Oliveira tiago@div.cefetmg.br Memória Principal Capítulo 4 Livro do Mário Monteiro Introdução Hierarquia de memória Memória Principal Organização Operações de leitura e

Leia mais

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Organização e Arquitetura de Computadores I Slide 1 Memória Virtual os primeiros computadores (início dos anos 60) tinham memória principal muito reduzida O PDP-1 funcionava com uma memória de 4096 palavras

Leia mais

Adriano J. Holanda FAFRAM. 4 e 11 de maio de 2012

Adriano J. Holanda FAFRAM. 4 e 11 de maio de 2012 Memória Adriano J. Holanda FAFRAM 4 e 11 de maio de 2012 Trilha Introdução Hierarquia da memória Memórias RAM Memória ROM Introdução Arquitetura de Von Neumann Memória Aritmética Controle E/S Unidade central

Leia mais

DCC-IM/NCE UFRJ Pós-Graduação em Informática. Gabriel P. Silva. Microarquiteturas de Alto Desempenho

DCC-IM/NCE UFRJ Pós-Graduação em Informática. Gabriel P. Silva. Microarquiteturas de Alto Desempenho DCC-IM/NCE UFRJ Pós-Graduação em Informática Microarquiteturas de Alto Desempenho Hierarquia de Memória Gabriel P. Silva Introdução Os programadores sempre ambicionaram ter quantidades ilimitadas de memória

Leia mais

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Organização e Arquitetura de Computadores I BARRAMENTO Slide 1 Sumário Introdução Componentes de Computador Funções dos Computadores Estruturas de Interconexão Interconexão de Barramentos Slide 2 Introdução

Leia mais

Arquitetura e Organização de Computadores 2. Organização Hierárquica da Memória. Uma afirmação antiga, mas perfeitamente atual

Arquitetura e Organização de Computadores 2. Organização Hierárquica da Memória. Uma afirmação antiga, mas perfeitamente atual Arquitetura e Organização de Computadores 2 Organização Hierárquica da Memória Hierarquia da Memória Uma afirmação antiga, mas perfeitamente atual Ideally one would desire an indefinitely large memory

Leia mais

Memórias RAM e ROM. Adriano J. Holanda 9/5/2017. [Introdução à Organização de Computadores]

Memórias RAM e ROM. Adriano J. Holanda 9/5/2017. [Introdução à Organização de Computadores] Memórias RAM e ROM [Introdução à Organização de Computadores] Adriano J Holanda 9/5/2017 Memória de acesso aleatório RAM Random Access Memory Armazenamento temporário de programas em execução e dados;

Leia mais

Organização e Arquitetura de computadores

Organização e Arquitetura de computadores Organização e Arquitetura de computadores Revisão: hierarquia de memória Utilização do conceito da localidade para apresentar ao usuário toda a quantidade de memória disponível no sistema processador 4-8

Leia mais

Sistemas Operacionais. Conceitos de Hardware

Sistemas Operacionais. Conceitos de Hardware Sistemas Operacionais Conceitos de Hardware Sumário 1. Introdução 7. RISC e CISC 2. Processador 1. Operações de Processamento 2. Unidade de Controle 3. Ciclos de uma Instrução 3. Memória 1. Memória Principal

Leia mais

Gerenciamento de memória

Gerenciamento de memória Gerenciamento de memória O que faz? Controla o uso dos espaços em memória Controla os modos de endereçamento dos processos Como funciona a memória? Hierarquia de memória A falta de desempenho A velocidade

Leia mais

Aula 13: Memória Cache

Aula 13: Memória Cache Aula 13: Memória Cache Diego Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Diego Passos (UFF) Memória: Memória Cache FAC 1 / 53 Memória Cache Diego Passos (UFF) Memória:

Leia mais

Aula 16: Memória Principal e Memória Virtual

Aula 16: Memória Principal e Memória Virtual Aula 16: Memória Principal e Memória Virtual Memória Principal Performance na memória principal: Latência: Miss Penalty na Cache Access Time: tempo entre requisição e retorno de palavra Cycle Time:

Leia mais

Memória para CAD. Aleardo Manacero Jr.

Memória para CAD. Aleardo Manacero Jr. Memória para CAD Aleardo Manacero Jr. Introdução Na aula de hoje examinaremos como o subsistema de memória afeta o desempenho de um sistema computacional Veremos um pouco da sua arquitetura Veremos também

Leia mais

FUNDAMENTOS DE ARQUITETURAS DE COMPUTADORES MEMÓRIA PRINCIPAL CAPÍTULO 4. Cristina Boeres

FUNDAMENTOS DE ARQUITETURAS DE COMPUTADORES MEMÓRIA PRINCIPAL CAPÍTULO 4. Cristina Boeres FUNDAMENTOS DE ARQUITETURAS DE COMPUTADORES MEMÓRIA PRINCIPAL CAPÍTULO 4 Cristina Boeres Memória! É um dos componentes de um sistema de computação! Sua função é armazenar informações que são ou serão manipuladas

Leia mais

MEMÓRIAS SEMICONDUTORAS

MEMÓRIAS SEMICONDUTORAS MEMÓRIAS SEMICONDUTORAS Em um sistema computacional subentende-se memória como qualquer dispositivo capaz de armazenar dados, mesmo temporariamente. Atualmente, os métodos de armazenamento de informação

Leia mais

Memoria. UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática

Memoria. UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática Arquitectura de Computadores II Engenharia Informática (11545) Tecnologias e Sistemas de Informação (6621) Memoria Fonte: Arquitectura de Computadores, José Delgado, IST, 2004 Nuno Pombo / Paulo Fazendeiro

Leia mais

Sistemas Operacionais Aula 16 Memória Virtual

Sistemas Operacionais Aula 16 Memória Virtual Sistemas Operacionais Aula 16 Memória Virtual Ivan da Silva Sendin ivansendin@yahoo.com FACOM - Universidade Federal de Uberlândia Sistemas OperacionaisAula 16Memória Virtual p. 1 Memória Virtual - Definição

Leia mais

Aula 16: Memória Principal e Memória Virtual

Aula 16: Memória Principal e Memória Virtual Aula 16: Memória Principal e Memória Virtual Memória Principal Performance na memória principal: Latência: Miss Penalty na Cache Access Time: tempo entre requisição e retorno de palavra Cycle Time: tempo

Leia mais

COMPUTADOR. Adão de Melo Neto

COMPUTADOR. Adão de Melo Neto COMPUTADOR Adão de Melo Neto 1 COMPUTADOR COMPUTADOR Barramento de Endereços: Determina qual a posição de memória que irá ser lida ou escrita (unidirecional). Barramento de Endereços: Transporta o dados

Leia mais

Fundamentos de Sistemas Operacionais

Fundamentos de Sistemas Operacionais Fundamentos de Sistemas Operacionais Aula 19: Memória Virtual: Introdução Diego Passos Última Aula Paginação Método de gerenciamento de memória mais usado hoje. Espaço de endereçamento de um processo é

Leia mais

INTRODUÇÃO À ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES. Função e Estrutura. Introdução Organização e Arquitetura. Organização e Arquitetura

INTRODUÇÃO À ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES. Função e Estrutura. Introdução Organização e Arquitetura. Organização e Arquitetura Introdução Organização e Arquitetura INTRODUÇÃO À ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES Eduardo Max Amaro Amaral Arquitetura são os atributos visíveis ao programador. Conjunto de instruções, número

Leia mais

DEFINIÇÃO É TODO AQUELE DISPOSITIVO CAPAZ DE ARMAZENAR INFORMAÇÃO. A

DEFINIÇÃO É TODO AQUELE DISPOSITIVO CAPAZ DE ARMAZENAR INFORMAÇÃO. A U E S C Memória DEFINIÇÃO É TODO AQUELE DISPOSITIVO CAPAZ DE ARMAZENAR INFORMAÇÃO. A Hierarquia de Memória Em um Sistema de computação existem vários tipos de memória que interligam-se de forma bem estrutura

Leia mais

ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 10: MEMÓRIA E HIERARQUIA DE MEMÓRIAS

ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 10: MEMÓRIA E HIERARQUIA DE MEMÓRIAS ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 10: MEMÓRIA E HIERARQUIA DE MEMÓRIAS Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação MEMÓRIA SÃO TODOS

Leia mais

Professor: Vlademir de Oliveira Disciplina: Microcontroladores e DSP. Memórias de Dados e de Programa

Professor: Vlademir de Oliveira Disciplina: Microcontroladores e DSP. Memórias de Dados e de Programa 4. Memórias de Dados e de Programa Professor: Vlademir de Oliveira Disciplina: Microcontroladores e DSP 4.1 Memórias Semicondutoras Algumas definições Célula: Dispositivo de armazenamento de 1 bit. Palavra:

Leia mais

2. A influência do tamanho da palavra

2. A influência do tamanho da palavra PROCESSAMENTO 1. Introdução O processador é o componente vital do sistema de computação, responsável pela realização das operações de processamento (os cálculos matemáticos etc.) e de controle, durante

Leia mais

Função Principal da Memória

Função Principal da Memória Memórias Slide 2 Função Principal da Memória Armazenar dados. Armazenar os programas para serem executados pelo processador. Slide 3 Memória x Processador x HD Placa Mãe: Controlador de Memória Slide 4

Leia mais

Universidade Federal de Mato Grosso do Sul. Implementação de um Sistema Simplificado de Memória Cache

Universidade Federal de Mato Grosso do Sul. Implementação de um Sistema Simplificado de Memória Cache Universidade ederal de Mato Grosso do Sul acom - aculdade de Computação Linguagem de Programação Orientada a Objetos Prof. Me. Liana Duenha Implementação de um Sistema Simplificado de Memória Cache O objetivo

Leia mais