297564_Cap_04[1]

297564_Cap_04[1]


DisciplinaPrincípios da Arquitetura de Computadores18 materiais128 seguidores
Pré-visualização2 páginas
Click to edit Master title style
Click to edit Master subtitle style
*
*
William Stallings 
Arquitetura e Organização de Computadores
Capítulo 4
Memória Interna
*
*
*
Características
Localização
Capacidade (importante para o usuário)
Unidade de transferência
Método de acesso
Desempenho (importante para o usuário)
Tecnologia
Características físicas
Organização
*
*
*
Localização
Processador
Interna (principal)
Externa (secundária)
*
*
*
Capacidade
Tamanho da palavra
Unidade \u201cnatural\u201d da organização da memória
Número de palavras
Ou bytes
*
*
*
Unidade de transferência
Interna
Normalmente governada pela largura do barramento de dados
Externa
Normalmente um bloco o qual é muito maior que a palavra
Unidade endereçável
A menor localização que pode unicamente endereçável
Internamente palavra
Blocos nos discos
*
*
*
Métodos de acesso (1)
Seqüencial
Começa no início e le em ordem
O tempo de acesso depende da localização do dado e e da posição prévia
p.e. fita
Direto
Cada bloco individual possui endereço único
O acesso é feito por meio de um acesso direto a uma vizinhança genérica e depois uma pesquisa seqüencial
O tempo de acesso depende da localização do dado e e da posição prévia
p.e. disco
*
*
*
Métodos de acesso (2)
Aleatório (randômico)
Endereços individuais identificam exatamente as localizações
O tempo de acesso é independente da localização ou do acesso anterior
p.e. RAM
Associativo
Uma palavra é buscada na memória com base em uma parte do seu conteúdo
O tempo de acesso é independente da localização ou do acesso anterior
p.e. cachê
*
*
*
Desempenho
Tempo de acesso
O tempo entre a apresentação do endereço e a obtenção do dado válido
Tempo de ciclo
Tempo que pode se requerido para a memória \u201crecuperar\u201d antes do próximo acesso
Tempo do ciclo é acesso + recuperação
Taxa de transferência
A taxa na qual o dado pode ser movido
*
*
*
Tecnologia
Semicondutores
RAM
Magnéticos
Disco e Fita
Ópticos
CD e DVD
Outros
Bolha 
Holograma
*
*
*
Características físicas
Decadência (Decay)
Volatilidade
Pode ser apagado
Consumo de energia
*
*
*
Organização
Configuração física dos bits nas palavras
Não é sempre obvia
p.e. interlaçada (interleaved)
*
*
*
A Linha de Fundo
Quanto armazena? 
Capacidade 
Quanto rápido? 
Tempo é dinheiro 
Quanto custa? 
*
*
*
A hierarquia da memória
Memória interna
Registradores
Memória cachê
Memória principal (RAM)
Armazenamento externo
Disco magnético
CD_ROM, CR_RW
DVD
Armazenamento de segurança
Fita magnética, DAT
WORM
*
*
*
A hierarquia da memória
À medida que descemos 
 o custo por bit cai
 a capacidade aumenta
 o tempo de acesso aumenta
 a freqüência de acesso cai
*
*
*
Lista da hierarquia
Registradores
Cachê L1
Cachê L2
Memória principal
Cachê de disco
Disco
Óptico
Fita
*
*
*
Então queremos rapidez?
É possível construir um computador que só usa RAM estático (veja depois)
Seria muito rápido
Não seria necessário cachê
Como usar cachê para cachê?
Seria muito caro (financeiramente)
*
*
*
Memória de semicondutores
RAM (random-access memory)
Existem outras memórias de semicondutores que são de acesso aleatório
Leitura/escrita
Volátil
Armazenamento temporário
Estática ou dinâmica
*
*
*
RAM Dinâmica
Bits armazenados como carga em capacitores
Os capacitores descarregam
Necessitam de regeneração (refresh) mesmo ligados
Construção mais simples
Menor por bit
Mais baratos
Necessitam de circuitos de regeneração (refresh)
Mais lento
Memória principal
*
*
*
RAM Estática
Bits são armazenados com chaves on/off
Não ha cargas para descarregar
Não necessitam de regeneração quando ligados
Construção mais complexa
Maiores por bits
Mais caros
Não necessitam de circuitos de regeneração (refresh)
Mais Rápidos
Cachê
*
*
*
Memória apenas de leitura ROM
Read Only Memory (ROM)
Memória permanente
Microprogramação
Biblioteca de sub-rotinas
Programa de sistema (BIOS)
Tabelas de funções
*
*
*
Tipos de ROM
Gravadas durante a fabricação
Muito caro para pequenas quantidades
Programável (só uma vez)
PROM
Precisa de equipamentos especiais para gravação
\u201cPrincipalmente\u201d leitura
(EPROM - Erasable Programmable)
Erased by UV
Apaga eletricamente (EEPROM - Electrically Erasable)
Demora muito mais para escrever do que para ler
Memória Flash
Apaga toda memória eletricamente
*
*
*
Organização em detalhes
Um chip de 16MBit pode ser organizado como 1M de palavras de 16 bits
Um sistema de um bit por chip tem 16 fatias de chip de 1 Mbit com o bit 1 de cada palavra no chip 1, e assim por diante
Um chip de 16Mbit pode ser organizado como uma matriz 2048 x 2048 x 4 bit
Reduz o número de pinos de endereço
Multiplexa os endereços de linhas e colunas
11 pinos para endereço (211=2048)
Adicionando mais um pino dobra a faixa de valores x4 a capacidade
*
*
*
Regeneração - Refreshing
Circuito de regeneração incluído no chip
Desabilita o chip
Conta por linhas
Leitura e reescrita
Gasta tempo
Reduz o desempenho
*
*
*
16 Mb DRAM Típico (4M x 4)
RAS row address select
CAS column address select
WE write enable
OE output enable
*
*
*
Empacotamento
A
A address
D data
Vcc power
Vss ground
Vpp write
CE chip enable
B
A address
D data
Vcc power
Vss ground
CAS column
RAS row
OE Output enable
WE write enable
*
*
*
Organização
em módulos
*
*
*
Organização em módulos (2)
*
*
*
Correção de erros
Falhas de hardware
Defeito permanente
Erro moderado
randômico, não destrutivo
Nenhum dano permanente para memória
Detectado usando o código de correção de erros de Hamming
*
*
*
Código de correção de erro
*
*
*
Localidade da referencia
Durante o curso da execução de um programas, as referencias a memória (endereços) tendem a ficarem próximas
p.e. loops
*
*
*
Temporalidade da referencia
Durante o curso da execução de um programas, as referencias a memória (endereços) tendem a ficarem próximas em relação ao tempo
p.e. loops
*
*
*
Cachê
Quantidade pequena de memória rápida
Situa-se entre memória principal normal e CPU
Pode estar localizada na CPU ou módulo
*
*
*
Operação da cachê - avaliação
CPU solicita um dado na memória
Confira se os dados estão na cachê
Se presente, obtenha o dado da cachê (rápido)
Senão, leia o bloco da memória para a cachê
Então entregue o dado da cachê
A cachê inclui rótulos para identificar qual bloco de memória está em cada linha da cachê 
*
*
*
Projeto de cachê
Tamanho
Função de mapeamento
Algoritmo de substituição
Política de escrita
Tamanho da linha
Número de memórias cachê
*
*
*
Tamanho importa
Custo
Mais cachê e mais caro
Velocidade
Mais cachê é mais rápida (até certo ponto)
Verificar dados na cachê demora tempo
*
*
*
Organização típica de cachê
*
*
*
Função de mapeamento
Cachê de 64kByte
Bloco de cachê de 4 bytes
p.e a cachê é de 16k (214) linhas de 4 bytes
16MBytes de memória principal
24 bit de endereço
(224=16M)
*
*
*
Mapeamento direto
Cada bloco da memória mapeia em apenas uma linha da cachê
p.e. Se um bloco esta na cachê, só estará em um lugar
O endereço é composto de duas partes
Os w bits menos significativos (LSB) formam um endereço único 
Os s bits mais significativos (MSB) especificam um bloco de memória
OS MSBS são divididos em campo da linha de cachê e um rotulo de s-r (mais significativos)
*
*
*
Mapeamento direto
estrutura dos endereços
Endereço de 24 bits
2 bits identificador da palavra (bloco de 4 byte)
Identificador do bloco (22 bits)
Rotulo 8 bit (=22-14)
Linha de 14 bits
Não existe dois blocos na mesma linha com o rotulo igual
Verifica o conteúdo da cachê encontrando a linha e verificando o rótulo
Tag s-r
Line or Slot r
Word w
8
14
2
*
*
*
Mapeamento direto 
tabela das linhas do cachê
linha			Inicio do bloco
0				0, m, 2m, 3m\u20262s-m
1				1,m+1, 2m+1\u20262s-m+1
m-1			m-1, 2m-1,3m-1\u20262s-1
Formula linha = bloco % (numero de linhas)
*
*
*
Organização do mapeamento direto da cachê
*
*
*
Exemplo de mapeamento direto
*
*
*
Mapeamento direto pros & cons
Simples
Barato
Endereço fixo para um determinado bloco
Se um programa acessar 2 blocos que mapeam repetidamente à mesma linha, as falhas de