Organização Estruturada de Computador - Aula 4

MEMÓRIA PRINCIPAL 




Nesta aula abordaremos os temas de linguagens de computadores, níveis e máquinas virtuais e máquinas multiníveis contemporâneas.

O texto abaixo é um resumo dos seções 2.2, 2.2.1, 2.2.2, 2.2.3, 2.2.4 e 2.2.5  do capítulo 2 do livro: Organização Estruturada de Computadores de Andrew S. Tanenbaum, 4a Edição, 2001.

Importante: O resumo abaixo deve ser complementado, pelo aluno, com a leitura do texto original do livro.


Tópicos


Introdução

    A memória
    Sistema binário é muito confiável pois trabalha com apenas 2 níveis, 0 ou 1.
    Em 1 byte podemos armazenar 28= 256 combinações diferentes, em 2 bytes 216=65536, e assim por diante

 
Up

Endereços de Memória

    Os endereços da memória principal:
    Organização da memória depende do número de bytes por palavra  - Veja exemplo na figura abaixo


image 2-9

Figura 2.9 Três maneiras de se organizar uma memória de 96 bits
 (Obtida do material, disponível na internet, do livro do Tanenbaum, 2001)


    Importante:
 
      O número de bits usados para representar os endereços de memória


Computador Bits/Célula
Burroughs B1700
1
PC IBM
8
DEC PDP-8
12
IBM 1130
16
DEC PDP-15
18
XDS 940
24
Electrológica X8
27
XDS Sigma 9
32
Honeywell 6180
36
CDC 3600
48
CDC Cyber
60


Figura 2.10 Número de bits por célula de alguns computadores comerciais de interesse
 (Obtida do material, disponível na internet, do livro do Tanenbaum, 2001)
 
    Obsevações:
        As instruções de um computador operam sobre as palavras da memória - 1 Byte, 2 Bytes ...
        Registros do processador são, em geral, do mesmo tamanho da palavra da memória

 
Up

Ordenação dos Bytes

   
    Existem, basicamente, 2 formas de organização dos bytes em uma palavra de memória

    Ordenação Big endian

  Ordenação Little endian

image 2-11


Figura 2.11 (a) Memória big endian. (b) Memória little endian
 (Obtida do material, disponível na internet, do livro do Tanenbaum, 2001)

  
 image 2-12


Figura 2.12 (a) Registro de determinado funcionário em uma máquina big endian. (b) O mesmo registro em uma máquina little endian. (c) Resultado da transferência do registro da máquina big endian para a little endian. (d) O resultado da troca de bytes de (c)
  (Obtida do material, disponível na internet, do livro do Tanenbaum, 2001)


    Problemas causados pela falta de padronização do armazenamento em memória:
    Importante: A solução para o problema acima não é trivial, em geral se baseia em inversão dos bytes. Isto funciona para valores numéricos mas não para cadeias de caracteres, como mostra a figura 2.12.

 
Up

Códigos com  correção de erros

    Problema: Dados da memória podem, ocasionalmente, conter erros causados por oscilação de tensão, por exemplo.

    Solução:

    Definição:

        Distância de Hamming é igual ao número de bits correspondentes que diferem em duas palavras de código quaisquer.
        As propriedades de detecção de erros e de correção de erros dependem fundamentalmente da sua distância de Hamming
        Para detectar d erros é necessário uma distância de hamming igual a d+1, pois em tal código não há como a ocorrência de d erros transformar uma palavra de código válida em outra palavra de código válida.
        Para corrigir d erros é necessário uma distância de hamming igual a 2d+1.

        Exemplo: As palavras de código 10001001 e 10110001 tem distância de Hamming igual a 3 (Veja bits em negrito)

        Observação: É necessário que ocorram 3 erros (inversões) nos bits em negrito da palavra 2 para que ela se transforme na palavra 1.

Definição:

    Bit de Paridade: Definido pelo número de 1s que ocorrem em uma palavra. Paridade par está associada a um numero par de 1s e paridade impar está associada a um número impar de 1s

     Exemplo Simples:

Tamanho da Palavra
Bits de Verificação
Tamanho Total
Overhead
percentual
8
4
12
50
16
5
21
31
32
6
38
19
64
7
71
11
128
8
138
6
256
9
265
4
512
10
522
2


Figura 2.13 Número de Bits de verificação para um código que corrija um único erro



 
 
Up

Memória Cache

    Problemas
    Soluções
figura 2.16

Figura 2.16 Em termos lógicos, a cache é colocada entre o processador e a memória principal. Em termos físicos, existem vários lugares possíveis de ela ser colocada


    Idéias básicas por trás do conceito de Memória Cache:

 
 
Up

Exercícios capítulo 2


exerc2
Up