33
Arquitectura interna do computadorTIS 20-05-2010 1

pradigital-paula. file · Web viewUnidade de transferência é a quantidade de bits que é transferida da memória em uma única operação de leitura ou transferida para a memória

  • Upload
    lephuc

  • View
    214

  • Download
    0

Embed Size (px)

Citation preview

Page 2: pradigital-paula. file · Web viewUnidade de transferência é a quantidade de bits que é transferida da memória em uma única operação de leitura ou transferida para a memória

Arquitectura interna do computador TIS 20-05-2010

A memória precisa ter uma organização que permita ao computador guardar e recuperar informações quando necessário.

Não teria nenhum sentido armazenar informações que não fosse possível recuperar depois. Portanto, não basta transferir informações para a memória.

É preciso ter como encontrar essa informação mais tarde, quando ela for necessária, e para isso é preciso haver um mecanismo que registe exactamente onde a informação foi armazenada (lembrando nossa analogia com o computador hipotético, imagine encontrar uma informação guardada ao acaso, se nosso escaninho tivesse 1 milhão de compartimentos...).

Célula é a unidade de armazenamento do computador. A memória principal é organizada em células. Célula é a menor

unidade da memória que pode ser endereçada (não é possível buscar uma "parte" da célula) e tem um tamanho fixo (para cada máquina).

As memórias são compostas de um determinado número de células ou posições.

Cada célula é composta de um determinado número de bits. Todas as células de um dado computador tem o mesmo tamanho, isto é, todas as células daquele computador terão o mesmo número de bits.

Cada célula é identificada por um endereço único, pela qual é referenciada pelo sistema e pelos programas.

As células são numeradas sequencialmente, uma a uma, de 0 a (N-1), chamado o endereço da célula. Endereço é o localizador da célula, que permite identificar univocamente uma célula.

Assim, cada célula pode ser identificada pelo seu endereço.Unidade de transferência é a quantidade de bits que é transferida

da memória em uma única operação de leitura ou transferida para a memória em uma única operação de escrita. Uma célula não significa o mesmo que uma palavra; uma célula não necessariamente contém uma palavra.

Palavra é a unidade de processamento da UCP. Uma palavra deve representar um dado ou uma instrução, que poderia ser processada, armazenada ou transferida em uma única operação.

No entanto, em geral não é assim que acontece e os computadores comerciais não seguem um padrão único para a organização da UCP e MP. Computadores comerciais (tais como por exemplo os baseados nos processadores Intel 486) podem ter o tamanho da palavra definido como de 32 bits, porém sua estrutura de

2

Page 3: pradigital-paula. file · Web viewUnidade de transferência é a quantidade de bits que é transferida da memória em uma única operação de leitura ou transferida para a memória

Arquitectura interna do computador TIS 20-05-2010

memória tem células e de 16 bitsA estrutura da memória principal é um problema do projecto de hardware: - Mais endereços com células menores ou menos endereços com células maiores? O tamanho mais comum de célula era 8 bits (1 byte); hoje já são comuns células contendo vários bytes.

A memória RAM é mais um dos componentes essenciais dos micros PCs.

O processador utiliza a memória RAM para armazenar programas e dados que estão em uso, ficando impossibilitado de trabalhar sem pelo menos uma quantidade mínima dela.

A sigla “RAM” significa “Ramdom Access Memory” ou “memória de acesso aleatório”. Este nome é mais do que adequado, pois a principal característica da memória RAM é a capacidade de fornecer qualquer dado anteriormente gravado, com um tempo de resposta e uma velocidade de transferência centenas de vezes superior à dos dispositivos de memória de massa, como o disco rígido.

Mais uma característica marcante da memória RAM é o facto de ela ser volátil, precisando ser constantemente reemergida para conservar os dados gravados.

Como numa calculadora, perdemos todos os dados nela armazenados quando desligamos o computador. Por exemplo se estiver escrever uma carta no Word, e, de repente houver um pico de tensão e o computador reinicializar, não vai ter tempo para salvar a carta no disco rígido, perderá todo o trabalho.

A quantidade e velocidade das memórias são mais importantes que a própria velocidade do processador, principalmente para quem trabalha apenas com aplicativos de escritório, com imagens, ou trabalhar com vários aplicativos abertos ao mesmo tempo. De nada adianta termos um processador muito rápido, se devido à pouca quantidade de memória disponível, seu desempenho é sub - utilizado devido ao uso de memória virtual, ficando limitado à performance do disco rígido.

Para ter uma ideia do quanto a quantidade de memória RAM é importante, um simples 486 com uma quantidade razoável de memória RAM (32 MB ou mais) é capaz de rodar o Windows 95/98 e a maioria dos aplicativos mais rápido do que um Pentium III de 500 MHz com apenas 8 MB de memória.

A memória RAM é mais um dos componentes essenciais dos micros PCs. O processador utiliza a memória RAM para armazenar programas e dados que

estão em uso, ficando impossibilitado de trabalhar sem pelo menos uma quantidade mínima dela.

FUNCIONAMENTO

Os chips de memória RAM possuem uma estrutura extremamente simples. Para cada bit 1 ou 0 a ser armazenado, temos um minúsculo

3

Page 4: pradigital-paula. file · Web viewUnidade de transferência é a quantidade de bits que é transferida da memória em uma única operação de leitura ou transferida para a memória

Arquitectura interna do computador TIS 20-05-2010

capacitador; quando o capacitador está carregado electricamente temos um bit 1 e quando ele está descarregado temos um bit 0.

Para cada capacitador temos um transístor, encarregado de ler o bit armazenado em seu interior e transmiti-lo ao controlador de memória.

A produção de chips de memória é similar ao de processadores: também utilizamos um waffer de silício como base e um laser para marcá-lo.

A diferença é que os chips de memória são compostos basicamente de apenas uma estrutura básica: o conjunto capacitador/transístor, que são repetidos alguns milhões de vezes, enquanto os processadores são formados por estruturas muito mais complexas.

ACESSO A DADOS

Para ler e gravar dados na memória, assim como controlar todo o trânsito de dados entre a memória e os demais componentes do micro, é usado mais um circuito, chamado controlador de memória, que faz parte do chipset localizado na placa mãe. Para facilitar o acesso a dados, dividimos os módulos de memória em linhas e colunas.  

FORMATO

Os chips de memória são frágeis placas de silício, que precisam ser encapsulados em alguma estrutura mais resistente antes de serem transportados e encaixados na placa mãe.  

MEMÓRIAS REGULARES

As memórias regulares ou “comuns” foram o primeiro tipo de memória usado em micros PC.

Neste tipo antigo de memória, o acesso é feito enviando primeiro o endereço RAS e em seguida o endereço CAS, da forma mais simples possível as memórias regulares são encontradas apenas na forma de módulos DIP, e foram utilizadas em micros XT, 286 e em alguns dos primeiros micros 386.

MEMÓRIAS SDRAM (SYNCHRONOUS DYNAMIC RAM)

As memórias SDRAM por sua vez, são capazes de trabalhar sincronizadas com os ciclos da placa mãe, sem tempos de espera. Isto significa, que a temporização de uma memória SDRAM é sempre de uma leitura por ciclo. Independentemente da velocidade de barramento utilizada, a temporização das memórias SDRAM poderá ser de 5-1-1-1.

4

Page 5: pradigital-paula. file · Web viewUnidade de transferência é a quantidade de bits que é transferida da memória em uma única operação de leitura ou transferida para a memória

Arquitectura interna do computador TIS 20-05-2010

Como é preciso que a memória SDRAM a ser usada seja rápida o suficiente para acompanhar a placa mãe, encontramos no mercado versões com tempos de acesso entre 15 e 6 nanossegundos.

Para não trabalharem sincronizadas com o relógio da placa mãe, as memórias FPM e EDO poderiam trabalhar com qualquer velocidade de barramento, 100, 133, 200 MHz, ou até mais, desde que os tempos de espera fossem acertados correctamente. Porém, quanto mais alta a velocidade, maior teriam que ser os tempos de espera e pior seria o desempenho das memórias.

Por isso, não se costuma utilizar memórias EDO ou FPM em velocidades de barramento superiores a 75 MHz, apenas memórias SDRAM.

 

Memoria RAM e Memoria SDRAM

Em informática, um endereço de memória é um identificador de memória local, em que um programa de computador pode armazenar dados e depois recuperá-los. Geralmente este é um número binário, de uma sequência finita ordenada, que descreve exclusivamente a própria memória.

Nos computadores, cada endereço identifica um único byte de armazenamento. Uma grande quantidade de dados para ser armazenada num único byte, pode residir em vários bytes, ocupando uma sequência de endereços consecutivos.

A eficiência de endereçamento de memória depende do tamanho do barramento de endereços.

5

Page 6: pradigital-paula. file · Web viewUnidade de transferência é a quantidade de bits que é transferida da memória em uma única operação de leitura ou transferida para a memória

Arquitectura interna do computador TIS 20-05-2010

Num programa, um endereço específico, é um endereço de memória que identifica exclusivamente um local na memória e o endereço relativo não é único e especifico de um local apenas.

Modos de endereçamento

Permitem especificar como os operandos estão disponíveis na memória ou no banco de registadores.

Diferentes arquitecturas têm números de modos de endereçamento diferentes.

Tipos comuns

Imediato Directo Indirecto Via Registador Indirecto via Registador Deslocamento (Relativo, Registo-Base, Indexação, Pilha)

6

Page 7: pradigital-paula. file · Web viewUnidade de transferência é a quantidade de bits que é transferida da memória em uma única operação de leitura ou transferida para a memória

Arquitectura interna do computador TIS 20-05-2010

ENDEREÇAMENTO IMEDIATO

A forma mais simples de endereçamento é o endereçamento imediato, no qual o operando está efectivamente presente na instrução.

Este modo pode ser usado para definir e usar constantes ou atribuir os valores iniciais às variáveis. Tipicamente, o número é guardado em complemento para dois; o bit mais à esquerda do campo do operando é usado como bit de sinal. Quando o operando é carregado num registo de dados, o bit de sinal estende-se para a esquerda até ao máximo tamanho da palavra de dados.

A vantagem do endereçamento imediato é que não há nenhuma referência à memória para além da extracção da instrução necessária para obter o operando, dessa forma, poupando o ciclo de memória ou de cache no ciclo de instrução.

A desvantagem é que o tamanho do campo de endereçamento é restringido ao tamanho do campo de endereço, o qual, em grande parte dos jogos de instruções é pequeno quando comparado com o tamanho da palavra.

ENDEREÇAMENTO DIRECTO

7

Page 8: pradigital-paula. file · Web viewUnidade de transferência é a quantidade de bits que é transferida da memória em uma única operação de leitura ou transferida para a memória

Arquitectura interna do computador TIS 20-05-2010

Uma forma muito simples de endereçamento é o endereçamento directo, no qual o campo de endereço contém o endereço efectivo do operando.

Esta técnica era habitual nas primeiras gerações de computadores e ainda pode ser encontrada num certo número de pequenos sistemas de computadores. A limitação óbvia, mencionada antes, é que esta apenas permite um campo de endereçamento limitado.

ENDEREÇAMENTO INDIRECTO

O problema que se põe com o endereçamento directo é que o comprimento do campo de endereço é habitualmente inferior ao comprimento da palavra, desta forma, limitando a gama de endereços. Uma solução é ter o campo de endereço a referenciar o endereço de uma palavra na memória, a qual, por sua vez, contém o endereço completo do operando. Isto é conhecido como endereçamento indirecto.

ENDEREÇAMENTO POR REGISTO

O endereçamento por registo é semelhante ao endereçamento directo. A única diferença é que o campo de endereçamento referencia um registo em vez de um endereço na memória principal.

Tipicamente, um campo de endereçamento que referencia registos terá 3 ou 4 bits, pelo que um total de 8 ou 16 registos de uso geral podem ser referenciados.

As vantagens do endereçamento de registos são que na instrução é necessário, apenas, um campo pequeno de endereço e

8

Page 9: pradigital-paula. file · Web viewUnidade de transferência é a quantidade de bits que é transferida da memória em uma única operação de leitura ou transferida para a memória

Arquitectura interna do computador TIS 20-05-2010

não são requeridas referências à memória. O tempo de acesso à memória é muito menor para um registo interno ao processador do que para um endereço na memória principal.

A desvantagem do endereçamento de registos é que o espaço de endereçamento é muito limitado.

Compete ao programador decidir quais os valores que devem permanecer nos registos e os que devem ser guardados em memória. A maior parte dos processadores actuais empregam múltiplos registos de uso geral, entregando ao programador da linguagem de montagem a responsabilidade pela eficiência da execução (e.g. programador de compiladores).

ENDEREÇAMENTO INDIRECTO POR REGISTO

Tal como o endereçamento por registo é análogo ao endereçamento directo, o endereçamento indirecto de registos é análogo ao endereçamento indirecto. Em ambos os casos, a única diferença é se o campo de endereço referencia uma posição de memória ou um registo.

As vantagens e limitações do endereçamento indirecto de registo são basicamente as mesmas que as para o endereçamento indirecto. Em ambos os casos, a limitação do espaço de endereçamento é ultrapassada se fizermos com que aquele campo refira uma localização que contenha um endereço com o comprimento da palavra. Adicionalmente, o endereçamento indirecto de registos usa menos uma referência à memória do que o endereçamento indirecto.

9

Page 10: pradigital-paula. file · Web viewUnidade de transferência é a quantidade de bits que é transferida da memória em uma única operação de leitura ou transferida para a memória

Arquitectura interna do computador TIS 20-05-2010

ENDEREÇAMENTO POR DESLOCAMENTO

Um modo poderoso de endereçamento combina as capacidades do endereçamento directo e de endereçamento indirecto de registo. É conhecido por uma variedade de nomes dependendo do contexto de utilização, mas o mecanismo básico é o mesmo. Este é referido como endereçamento por deslocamento.

O endereçamento por deslocamento requer que a instrução tenha dois campos de endereços, um dos quais, pelo menos, explícito. O valor contido num dos campos de endereço é usado directamente. O outro campo de endereço, ou uma referência implícita baseada no código de operação refere-se a um registo cujo conteúdo é adicionado a A para produzir o endereço efectivo.

Três das mais comuns utilizações do endereçamento por deslocamento são:

Endereçamento Relativo Endereçamento por Registo-Base Indexação

ENDEREÇAMENTO RELATIVO

10

Page 11: pradigital-paula. file · Web viewUnidade de transferência é a quantidade de bits que é transferida da memória em uma única operação de leitura ou transferida para a memória

Arquitectura interna do computador TIS 20-05-2010

Para o endereçamento relativo, o registo implicitamente referenciado é o apontador de programa (PC). Isto é, o endereço da instrução corrente é adicionado ao campo de endereço para produzir o EA. Tipicamente, o campo de endereço, para esta operação, é tratado como um número em complemento para dois.

O endereçamento relativo explora o conceito de localidade. Se a maioria das referências à memória estiverem relativamente perto da instrução que está

a ser executada, então a utilização do endereçamento relativo poupa bits de endereços da instrução.

ENDEREÇAMENTO POR REGISTO-BASE

Para o endereçamento por registo base, a interpretação é a seguinte:

11

Page 12: pradigital-paula. file · Web viewUnidade de transferência é a quantidade de bits que é transferida da memória em uma única operação de leitura ou transferida para a memória

Arquitectura interna do computador TIS 20-05-2010

O registo referenciado contém um endereço de memória e o campo de endereço contém um deslocamento (habitualmente um inteiro em representação sem sinal) desde aquele endereço. O registo pode ser referido explícita ou implicitamente.

O endereçamento por registo base também explora a localidade das referências à memória. É uma maneira apropriada de implementar segmentação. Em algumas implementações, um único registo base de segmento é empregado e usado implicitamente. Noutros, o programador pode escolher um registo para conter o endereço base de um segmento e a instrução tem de referenciá-lo explicitamente.

INDEXAÇÃO

Para a indexação, a interpretação é tipicamente a seguinte: O campo de endereço referencia um endereço na memória

principal e o registo referenciado contém um deslocamento positivo desde aquele endereço. É de notar que esta utilização é exactamente a oposta da interpretação para o endereçamento registo-base. Claro que é mais do que, apenas, uma questão de interpretação do utilizador. Uma vez que em indexação, o campo de endereço é considerado como sendo um endereço na memória, este contém mais bits do que o campo de endereço numa instrução comparável de registo-base. Também veremos que há alguns refinamentos à

12

Page 13: pradigital-paula. file · Web viewUnidade de transferência é a quantidade de bits que é transferida da memória em uma única operação de leitura ou transferida para a memória

Arquitectura interna do computador TIS 20-05-2010

indexação que não seriam úteis no contexto de registo-base. Seja como for, o método de cálculo do EA para o endereçamento por registo-base e indexação é o mesmo para ambos e em ambos os casos a referência ao registo é umas vezes implícita e outras vezes explícita (para diferentes tipos de processadores).

Uma importante utilização da indexação é fornecer um mecanismo eficiente para efectuar operações iteractivas.

Em algumas máquinas, é suprido tanto o endereçamento indirecto como a indexação e é possível empregar ambas na mesma instrução. Há duas possibilidades: a indexação é efectuada depois ou antes do endereçamento indirecto. Se a indexação é efectuada depois de endereçamento indirecto é designada por pós-indexação.

Com pré-indexação a indexação é efectuada antes do endereçamento indirecto.

Um endereço é calculado tal como uma indexação simples. Nesta caso, contudo, o endereço calculado contém não o operando, mas o endereço do operando.

ENDEREÇAMENTO DE PILHA

O último modo de endereçamento é o endereçamento de pilha. Uma pilha é uma lista linear de posições e algumas vezes é referida como uma lista empurra para baixo ou fila “último-a-chegar primeiro-a-sair”. A pilha é um bloco reservado de posições. Os itens são adicionados ao topo da pilha de forma a que, a qualquer momento, o bloco possa ser preenchido. Associado com a pilha está um apontador cujo valor é o endereço do topo da pilha. Em alternativa os dois elementos do topo da pilha podem estar em registos do processador, neste caso o apontador de pilha referencia o terceiro elemento da pilha. O apontador de pilha é mantido num registo. Assim, as referências a posições da pilha na memória são na verdade endereços indirectos por registo.

13

Page 14: pradigital-paula. file · Web viewUnidade de transferência é a quantidade de bits que é transferida da memória em uma única operação de leitura ou transferida para a memória

Arquitectura interna do computador TIS 20-05-2010

O modo de endereçamento de pilha é uma forma de endereço implícito. As instruções máquina não necessitam de incluir uma referência à memória, mas operam implicitamente no topo da pilha. As pilhas não têm sido, tradicionalmente, muito comuns mas estão a tornar-se extremamente comuns em micro-processadores.

Memória RAM

Memória de acesso aleatório, é um tipo de memória que permite a leitura e a escrita, utilizada como memória primária em sistemas electrónicos digitais.

O termo acesso aleatório identifica a capacidade de acesso a qualquer posição em qualquer momento, por oposição ao acesso sequencial, imposto por alguns dispositivos de armazenamento, como fitas magnéticas.

Memória ROM

14

Page 15: pradigital-paula. file · Web viewUnidade de transferência é a quantidade de bits que é transferida da memória em uma única operação de leitura ou transferida para a memória

Arquitectura interna do computador TIS 20-05-2010

A memória somente de leitura é um tipo de memória que permite apenas a leitura, ou seja, as suas informações são gravadas pelo fabricante uma única vez e após isso não podem ser alteradas ou apagadas, somente acedidos. São memórias cujo conteúdo é gravado permanentemente.

Uma memória somente de leitura propriamente dita vem com seu conteúdo gravado durante a fabricação. Actualmente, o termo Memória ROM é usado informalmente para indicar uma gama de tipos de memória que são usadas apenas para a leitura na operação principal de dispositivos electrónicos digitais, mas possivelmente podem ser escritas por meio de mecanismos especiais.

Memória cache

Memória Cache é uma pequena quantidade de memória estática de alto desempenho, tendo por finalidade aumentar o desempenho do processador realizando uma busca antecipada na memória RAM

CACHE L1

Uma pequena porção de memória estática presente dentro do processador. Em alguns tipos de processador, como o Pentium 2, o L1 é dividido em dois níveis: dados e instruções (que "dizem" o que fazer com os dados). A partir do Intel 486, começou a se colocar a L1 no próprio chip [processador]. Geralmente tem entre 16KB e 128KB; hoje já encontramos processadores com até 2MB de cache.

CACHE L2

Possuindo o Cache L1 um tamanho reduzido e não apresentando uma solução ideal, foi desenvolvido o cache L2, que contém muito

15

Page 16: pradigital-paula. file · Web viewUnidade de transferência é a quantidade de bits que é transferida da memória em uma única operação de leitura ou transferida para a memória

Arquitectura interna do computador TIS 20-05-2010

mais memória que o cache L1. Ela é mais um caminho para que a informação requisitada não

tenha que ser procurada na lenta memória principal. Alguns processadores colocam essa cache fora do processador, por questões económicas, pois uma cache grande implica num custo grande, mas há excepções, como no Pentium II, por exemplo, cujas caches L1 e L2 estão no mesmo cartucho que está o processador. A memória cache L2 é, sobretudo, um dos elementos essenciais para um bom rendimento do processador mesmo que tenha um clock baixo.

CACHE L3

Terceiro nível de cache de memória. Inicialmente utilizado pelo AMD K6-III (por apresentar o cache L2 integrado ao seu núcleo) utilizava a cache externo presente na placa-mãe como uma memória de cache adicional. Ainda é um tipo de cache raro devido a complexidade dos processadores actuais, com suas áreas chegando a milhões de transístores por micrómetros ou pirómetros de área. Ela será muito útil, é possível a necessidade futura de níveis ainda mais elevados de cache, como L4 e assim por diante.

16

Page 17: pradigital-paula. file · Web viewUnidade de transferência é a quantidade de bits que é transferida da memória em uma única operação de leitura ou transferida para a memória

Arquitectura interna do computador TIS 20-05-2010

Guia Completo de Memória

Quantia de memória que há num módulo

Bits e Bytes Os requisitos de CPU e memória Cálculo da capacidade de um módulo Empilhamento

Até agora, falamos dos atributos técnicos da memória e como o sistema funciona. O que resta saber são os detalhes técnicos, os "bits e bytes", como são chamados. Esta secção aborda o sistema de numeração binário, que forma a base da computação, assim como o cálculo da capacidade dos módulos de uma memória.

Bits e bytes

Os computadores se comunicam através de um "código" chamado "linguagem de máquina" em que são usados apenas dois numerais: 0 e 1. As diferentes combinações de 0 e 1 formam os chamados números binários. Estes números binários geram instruções que vão aos chips e aos microprocessadores que impulsionam os dispositivos da computação, como computadores, impressoras, unidades de disco rígido e assim por diante.

Ambos os termos "bits" e "bytes" são unidades de informação muito importantes para a computação. O termo bit é a abreviatura de "dígito binário". Como o nome sugere, um bit representa um único dígito num número binário; um bit é a menor informação usada em computação e pode ter um valor 1 ou 0. Um byte consiste em 8 bits. Quase todas as especificações das capacidades de um computador são representadas em bytes. Por exemplo, a capacidade da memória, as velocidades de

17

Page 18: pradigital-paula. file · Web viewUnidade de transferência é a quantidade de bits que é transferida da memória em uma única operação de leitura ou transferida para a memória

Arquitectura interna do computador TIS 20-05-2010

transferência de dados e a capacidade de armazenamento de dados, todas são medidas em bytes ou seus múltiplos (como kilobytes, megabytes ou gigabytes.)

Este assunto de bits e bytes é importante quando se fala de dispositivos e outros componentes do computador que trabalham juntos. Aqui, referimo-nos especificamente à forma em que os bits e os bytes foram a base do desempenho e da interacção dos componentes de memória de medição com outros dispositivos, como o CPU.

OS REQUISITOS DA CPU E DA MEMÓRIA

A CPU (unidade central de processamento) de um computador processam dados em pedaços de 8 bits. Estes pedaços, como já foi dito na secção anterior, costumam ser conhecidos como bytes. Como um byte é a unidade fundamental de processamento, o poder de processamento da CPU costuma ser descrito como a quantidade máxima de bytes que consegue processar num dado momento. Por exemplo, os microprocessadores Pentium e Power PC usam actualmente uma trajectória de dados de 64 bits, o que significa que podem processar informações de 64 bits ou 8 bytes de forma simultâneaCada transacção entre a CPU e a memória se chama ciclo de barramento. O número de bits de dados que a CPU pode transmitir durante um ciclo de barramento simples afecta o desempenho de um computador e estabelece o tipo de memória de que este computador precisa. A maioria dos computadores de mesa usa actualmente DIMM de 168 pinos, que suportam rotas de dados de 64 bits. Os SIMM de 72 pinos anteriores foram criados para suportar uma trajectória de dados de 32 bits. Quando eram usados em configurações que suportavam uma trajectória de dados de 64 bits, tinham de ser instalados em pares, com cada par de módulos formando um banco de memória. Deste modo, a CPU se comunicava com o banco de memória como uma unidade lógica.

Uma coisa interessante é que os módulos RIMM, que são mais novos que os DIMM, usam rotas de dados de 16 bits, menores; entretanto, transmitem informações muito rapidamente enviando diversos pacotes de dados por vez. Os módulos RIMM usam tecnologia de tubulação para enviar quatro pacotes

18

Page 19: pradigital-paula. file · Web viewUnidade de transferência é a quantidade de bits que é transferida da memória em uma única operação de leitura ou transferida para a memória

Arquitectura interna do computador TIS 20-05-2010

de 16 bits ao mesmo tempo a uma CPU de 64 bits, de tal forma que as informações continuem sendo processadas em pacotes de 64 bits.

CÁLCULO DA CAPACIDADE DE UM MÓDULO

A memória mantém as informações que a CPU precisa processar. A capacidade dos chips e dos módulos de memória é especificada em megabytes (milhões de bytes). Ao verificar quanta memória um módulo tem, há duas coisas importantes de que devemos lembrar: um modelo consiste num grupo de chips. Se são somadas as capacidades de todos os chips no módulo, é possível obter a capacidade total do módulo. As excepções a esta regra são:

Se alguma parte da capacidade está sendo usada para outras funções, como um verificação de erros.

Se alguma parte da capacidade não está sendo usada; por exemplo, alguns chips podem ter linhas extras que são usadas como reserva (isto não é comum).

Enquanto a capacidade dos chips costuma ser expressa em megabits, a capacidade do módulo costuma ser expressa em megabytes. Isto pode ser confuso, especialmente porque muita gente usa sem saber a palavra bit quando querem dizer byte, e vice-versa. Para ajuda a esclarecer isto, adoptaremos as seguintes normas neste manual: Quando falarmos da quantidade de memória num módulo, usaremos o termo "capacidade do módulo"; quando nos referirmos aos chips, usaremos o termo "densidade do chip". A capacidade do módulo será medida em megabytes (MB) com ambas as letras correspondentes à abreviatura escritas com maiúsculas, enquanto a capacidade dos chips será medida em megabit (Mbit) e escreveremos a palavra "bit" com letra minúscula.

Componente Expressão de capacidade

Unidades de capacidade

Exemplo

Chips Densidade dos Mbit (Megabits) 64Mbit

19

Page 20: pradigital-paula. file · Web viewUnidade de transferência é a quantidade de bits que é transferida da memória em uma única operação de leitura ou transferida para a memória

Arquitectura interna do computador TIS 20-05-2010

chipsMódulos de

memóriaCapacidade do

módulo MB (Megabytes) 64MB

DENSIDADE DOS CHIPS

Cada chip de memória é uma matriz de pequenas células. Cada célula mantém um bit de informação. Os chips de memória são descritos pela quantidade de informação que podem manter. Chamamos isto densidade do chip. Talvez você já tenha visto exemplos de densidades dos chips, como "SDRAM de 64 Mbit" o "8M por 8". Um chip de 64 Mbit, tem 64 milhões de células e pode manter 64 milhões de bits de dados. A expressão "8M por 8" descreve uma classe de chip de 64 Mbit mais detalhadamente.

Na indústria de memória, as densidades dos chips DRAM costumam ser descritas pela sua organização de células. O primeiro número na expressão indica a profundidade do chip (em locais) e o segundo número, indica a amplitude do chip (em bits). Ao multiplicarmos a profundidade pela amplitude obtemos a densidade do chip. Aqui são mostrados alguns exemplos:

TECNOLOGIA DE CHIPS DISPONÍVEL ACTUALMENTE

 Profundidade do chip em

milhões de locaisAmplitude do

chip em bits

Densidade do chip =

Profundidade x am

Chips de 16 Mbit4Mx41Mx162Mx816Mx1

41216

41681

16161616

Chips de 64 Mbit

4Mx168Mx816Mx4

4816

1684

646464

Chips de 128 8 16 128

20

Page 21: pradigital-paula. file · Web viewUnidade de transferência é a quantidade de bits que é transferida da memória em uma única operação de leitura ou transferida para a memória

Arquitectura interna do computador TIS 20-05-2010

Mbit8Mx1616Mx832Mx4

1632

84

128128

Chips de 256 Mbit

16Mx1632Mx864Mx4

163264

1684

256256256

CAPACIDADE DO MÓDULO

É fácil calcular a capacidade de um módulo de memória se você conhece as capacidades dos chips que o compõem. Se há 8 chips de 64 Mbits, se trata de um módulo de 512 Mbits. Entretanto, como a capacidade de um módulo é descrita em megabytes e não em megabits, deve-se converter os bits em bytes. Para fazer isso, bata dividir o número de bits por 8. No caso do módulo de 512 Mbit, seria como mostrado a seguir:

Talvez, você também tenha escutado que os módulos de memória padrão na indústria são descritos como: "4M x 32" (ou seja, "4 Meg por 32"), ou

"16M x 64" ("16 Meg por 64"). Nestes casos, calcule a capacidade do módulo exactamente como se fosse um chip, como mostrado a seguir:

Outros exemplos adicionais:

  Padrã Profundid Amplitu em Mbits = En

21

Page 22: pradigital-paula. file · Web viewUnidade de transferência é a quantidade de bits que é transferida da memória em uma única operação de leitura ou transferida para a memória

Arquitectura interna do computador TIS 20-05-2010

oadeem locais

de em bitsde dados

Profundidade vezes amplitude

MB= Mbits/8

72 pines

1Mx322Mx324Mx328Mx3216Mx3232Mx32

12481632

323232323232

32641282565121024

48163264128

168 pines

8Mx6416Mx6432Mx6464Mx64128Mx64

8163264128

6464646464

5121024204840968192

641282565121024

Como já mencionamos, há espaço somente para um certo número de chips numa PCI. Com base num DIMM de 168 pinos padrão da indústria, a capacidade mais alta que os fabricantes de módulos podem alcançar usando chips de 64 Mbits, é 128 MB com chips de 128 Mbits; o maior módulo possível é de 256 MB e com chips de 256 Mbits, o maior módulo possível é de 512MB.

EMPILHAMENTO

Muitos servidores e estações de trabalho de grande porte exigem módulos de maior capacidade para ter capacidades de memória do sistema de vários gigabytes ou mais. Há duas formas de aumentar a capacidade de um módulo. Os fabricantes podem empilhar chips uns sobre os outros, ou podem empilhar placas.

EMPILHAMENTO DE CHIPS

Com o empilhamento de chips, dois chips são empilhados e ocupam o espaço que normalmente ocuparia um. Em alguns

22

Page 23: pradigital-paula. file · Web viewUnidade de transferência é a quantidade de bits que é transferida da memória em uma única operação de leitura ou transferida para a memória

Arquitectura interna do computador TIS 20-05-2010

casos, o empilhamento é realizado de forma interna na fábrica de produção do chip e pode parecer se tratar de um único chip.

Noutros casos, os chips são empilhados de forma externa. O exemplo a seguir mostra dois chips empilhados de forma externa.

EMPILHAMENTO DE PLACAS Como já é de se esperar, o

empilhamento de placas implica em colocar dois conjuntos de placas de circuitos impressos (PCI) do módulo de memória juntas. Com o empilhamento de placas, uma placa secundária é montada sobre uma placa primária que se adapta ao slot de memória na placa-mãe do sistema.

Paginação…

A paginação da memória do computador é um processo de virtualização da memória que consiste na subdivisão da memória física em pequenas partições (frames), para permitir uma utilização mais eficiente da mesma. A alocação de memória é requisitada por páginas, a menor unidade deste método. Cada página é mapeada numa frame de memória através de um processo que chama paginação.

A paginação é implementada normalmente por unidades dedicadas de hardware integradas nos processadores. No caso dos processadores da família Intel x86, esta funcionalidade está atribuída à MMU. A paginação é obtida através de consulta a tabelas que relacionam os endereços lineares das páginas de memória com os endereços físicos das frames de memória respectivas. Para acelerar este processo utilizam-se também pequenas tabelas associativas designadas por TLB.

Um exemplo de Sistema Operacional que usa memória paginada é o Linux. Nos Sistemas Operativos com memória virtual paginada podemos ter programas em execução cujo tamanho é maior que a

23

Page 24: pradigital-paula. file · Web viewUnidade de transferência é a quantidade de bits que é transferida da memória em uma única operação de leitura ou transferida para a memória

Arquitectura interna do computador TIS 20-05-2010

memória física disponível, uma vez que se permite o mapeamento de páginas em memória secundária.

Segmentação…A segmentação é uma das maneiras mais comuns para a protecção

de memória, sendo a memória paginada outro método bastante utilizado. Significa que parte da memória é removida do processo sendo executado actualmente, através do uso de registadores. Se o dado prestes a ser lido ou escrito está fora do espaço de endereços do processo, uma falha de segmentação é lançada.

Qualquer programa de computador está dividido em secções, como as declarações de variáveis e declarações de subrotinas, sobretudo se ele foi escrito numa linguagem de alto nível. Em termos de execução, cada uma dessas secções vai ocupar um segmento da memória.

O sistema operativo que suporta este sistema possuirá uma tabela com os tamanhos e endereços de memória dos vários segmentos de um programa para saber onde estão. Cada segmento possui um conjunto de permissões (leitura, escrita ou execução) e um tamanho associado. Se o processo é autorizado pelas permissões a referenciar a memória da maneira como deseja e se o endereço está no trecho do segmento, a referência do endereço da memória é permitida. Senão, a falha de segmentação é lançada. Outra associação além de permissão e tamanho é a informação de onde o segmento está localizado na memória.

Uma MMU é responsável pela tradução de um segmento e um endereço relativo no segmento em um endereço de memória, e também pela verificação da permissão da referência e valor do endereço relativo.

Seu uso não deve ser confundido com a segmentação de memória utilizada pelas antigas arquitecturas de computador x86, como o Intel 8086 e o Intel 8088, que não forneciam protecção; a segmentação a partir do Intel 80286 passou a fornecer protecção.

Atribuição de instruções e dados à memória (Binding)… A maior parte dos SO permite que um programa possa ser colocado

em qualquer posição de memória. No entanto esta atribuição pode ser feita em:

Tempo de compilação – se a localização do programa poder ser conhecida à priori é gerado código com endereços absolutos. Alterações à localização do programa obrigam à sua recompilação;

24

Page 25: pradigital-paula. file · Web viewUnidade de transferência é a quantidade de bits que é transferida da memória em uma única operação de leitura ou transferida para a memória

Arquitectura interna do computador TIS 20-05-2010

Tempo de carga – obriga o compilador a gerar código relocatável, a atribuição do programa a um determinado conjunto de endereços é feita na sua carga para memória;

Em run-time – se durante a execução do programa este poder ser recolocado noutra localização de memória. O que implica a utilização de hardware específico;

Alocação…

Alocação de memória, consiste no processo de solicitar/utilizar memória durante o processo de execução de um programa de computador. A alocação de memória no computador pode ser dividida em dois grupos principais:

Alocação Estática: os dados tem um tamanho fixo e estão organizados sequencialmente na memória do computador. Um exemplo típico de alocação estática são as variáveis globais e arrays;

Alocação Dinâmica: os dados não precisam ter um tamanho fixo, pois podemos definir para cada dado quanto de memória que desejamos usar. Sendo assim vamos alocar espaços de memória (blocos) que não precisam estar necessariamente organizados de maneira sequencial, podendo estar distribuídos de forma esparsa na memória do computador. Na alocação dinâmica, vamos pedir para alocar/desalocar blocos de memória, de acordo com a nossa necessidade, reservando ou liberando blocos de memória durante a execução de um programa. Para poder “achar” os blocos esparsos na memória usamos as variáveis do tipo Ponteiro (indicadores de endereços de memória).

Reorganização…

O processo de reorganização ou desfragmentação da memória principal ocorre de modo a compactar os processos, para que estes ocupem posições contíguas e deixar espaço livre contíguo que também ocorre com o processo de paginação de memória. Assim, o computador poderá aumentar o seu desempenho, perdendo menos tempo com os dados alocados na sua memória.

25

Page 26: pradigital-paula. file · Web viewUnidade de transferência é a quantidade de bits que é transferida da memória em uma única operação de leitura ou transferida para a memória

Arquitectura interna do computador TIS 20-05-2010

Endereço/Endereçamento…

Um endereço de memória é um identificador único para um local de memória no qual um processador ou algum outro dispositivo pode armazenar pedaços de dados. Em computadores modernos com endereçamento por byte, cada endereço representa um byte distinto de armazenamento. Dados maiores que um byte podem residir em múltiplos bytes, ocupando uma sequência de bytes consecutivos. Alguns microprocessadores foram

desenvolvidos para trabalhar com endereçamento por Word, tornando a unidade de armazenamento maior que um byte.

Tanto memória virtual quanto memória física utilizam endereçamento de memória. Para facilitar a cópia de memória virtual em memória real, os sistemas operacionais dividem a memória virtual em páginas, cada uma contendo um número fixo de endereços. Cada página é armazenada em disco até que seja necessária, sendo então copiada pelo sistema operacional do disco para a memória, transformando o endereço virtual em endereço real.

Tal transformação é invisível ao aplicativo, e permite que aplicativos operem independente de sua localização na memória física, fornecendo aos sistemas operacionais liberdade para alocar e relocar memória conforme necessário para manter o computador executando eficientemente.

Frequentemente, ao citar tamanho de Word em computadores modernos, é citado também o tamanho de endereços de memória virtual em tal computador. Por exemplo, um computador de 32 bits geralmente trata os endereços de memória como valores inteiros de 32 bits, tornando o espaço de endereçamento igual a 232 = 4.294.967.296 bytes de memória, ou 4 GBs.

Memória virtual…

É uma forma de contornar o problema de falta de memória RAM o computador utilizando a própria memória interna do HD (disco rígido) para que se possa aumentar criando virtualmente uma memória estendida que funciona da mesma maneira que a RAM, só que muito mais lenta por ser feito isso no HD, pois a velocidade dos discos rígidos ainda é muito inferior a de um pente de memória RAM normal. A memória virtual é feita deixando um espaço do HD reservado para que seja possível sua utilização como memória virtual, no Windows o usuário pode tanto escolher a opção de deixar o Windows escolher qual é a melhor opção de quantidade de memória RAM (sendo que este espaço vai ficar indo e voltando), mais geralmente o Windows por si só pega pouca memória RAM. Mais ainda também pode ser feito a escolha pelo próprio usuário de quanto quer usar de seu disco

26

Page 27: pradigital-paula. file · Web viewUnidade de transferência é a quantidade de bits que é transferida da memória em uma única operação de leitura ou transferida para a memória

Arquitectura interna do computador TIS 20-05-2010

rígido para memória virtual, ou seja, alocação de memória do disco rígido para ser usada como se fosse memória RAM.

27

Page 28: pradigital-paula. file · Web viewUnidade de transferência é a quantidade de bits que é transferida da memória em uma única operação de leitura ou transferida para a memória

Arquitectura interna do computador TIS 20-05-2010

Referências

http://www.fortunecity.com/roswell/king/622/memorias.htm 14-04-2010

http://pt.wikipedia.org/wiki/Mem%C3%B3ria_RAM14-04-2010

http://pt.wikipedia.org/wiki/Mem%C3%B3ria_ROM 14-04-2010

http://pt.wikipedia.org/wiki/Mem%C3%B3ria_cache14-04-2010

http://pt.wikipedia.org/wiki/Mem%C3%B3ria_cache#Tipos_de_Mem.C3.B3ria_Cache 14-04-2010 às 10h00

http://www.kingston.com (Brasil/tools/umg/umg4.asp20/05/2010 às 15h00

http://pt.wikipédia.org20/05/2010 às 15h10

http://usuarios.upf.br/~appel/arquiI/endereca.pdf20/05/2010

http://www-asc.di.fct.unl.pt/~jcc/asc1/Teoricas/a8/node5.html20/05/2010

http://www.google.pt/images?hl=pt-PT&q=modos%20de%20endere%C3%A7amennto&um=1&ie=UTF-8&source=og&sa=N&tab=wi20/05/2010 às 15h15

Trabalho elaborado por:Holandina, Paula, Paulo, Pedro, Susel 28