Você está na página 1de 5

Disciplina: Sistemas Digitais

Curso: Engenharia Industrial Elétrica

Docente: Josélia

Discente: Carollina Silva de Santana

Data: 14/01/2022

SISTEMAS DIGITAIS

SISTEMAS DE MEMÓRIA

INTRODUÇÃO

Em sistemas mais simples, a memória é encarada como um conjunto uniforme de registos,


cada um dos quais endereçável individualmente (ARROZ, 2003). Um computador atual
utiliza diversos dispositivos para armazenamento de dados. Os dispositivos podem ser
classificados em:

• A memória primária (ou memória principal) - construída com base em circuitos


integrados, possuindo um tempo de acesso mais curto, maior custo por bit e de
menor dimensão, não tendo a capacidade de guardar os dados quando o sistema
está desligado.
• A memória secundária (ou memória auxiliar) - recorre a dispositivos baseados em
tecnologia magnética (discos e fitas magnéticas) ou óticas (CD-ROM e DVD). É
mais lenta, mas tem um custo por bit menor, maior capacidade e a possibilidade
de conservar os dados mesmo sem o dispositivo estar ligado. Esta memória, além
de poder ser utilizada pelo processador na execução de programas, através do uso
de memória virtual, é também usada para guardar dados em sistemas de ficheiros.

Um módulo de memória é constituído por um conjunto de registos (de um ou mais bits)


e um sistema de descodificação que permite selecionar um dos registos para operações de
leitura ou escrita (ARROZ, 2003).

A melhor situação para ter o maior desempenho do processador corresponde a ter a maior
quantidade de memória disponível possível funcionando na velocidade mais rápida
possível. Porém, como o custo por bit e a velocidade de funcionamento são inversamente

Internal Use
relacionados, a solução adotada é aderir ao uso de diversos tipos de memória, com
diferentes velocidades de acesso. O sistema de memória está estruturado de forma que os
dados e instruções mais utilizados estejam em memórias mais rápidas, enquanto os menos
frequentes estejam em memórias mais lentas.

No caso geral, podem existir vários níveis de cache, mas isso não altera o mecanismo de
funcionamento. Quando é feito um acesso a uma posição de memória, o sistema começa
a verificar se essa posição está disponível na memória mais rápida, que é denominada de
cache. Se essa posição não estiver disponível na cache, é consultada a memória principal,
que é geralmente do tipo RAM dinâmica. Se a posição também não estiver disponível na
memória principal, é feito um acesso à memória secundária, maior e mais lenta, e
geralmente funciona com base em discos magnéticos. Se o sistema de memória estiver
bem estruturado, este sistema hierárquico é mais lento que um sistema de memória em
que a totalidade da memória funcionasse à velocidade de cache. O custo total, porém, é
menor, uma vez que as memórias mais lentas têm um custo por bit inferior ao das
memórias mais rápidas.

O princípio da localidade baseia-se na verificação de que os acessos a memória feitos por


um processador são correlacionados entre si e não distribuídos uniformemente pela
memória disponível.

Existem dois tipos de localidade:

• A localidade temporal – que pode ser utilizada para acelerar os acessos a dados e
instruções, mantendo nas memórias mais rápidas nas posições de memória que
foram utilizadas mais recentemente. São executadas repetidamente as mesmas
instruções e reutilizadas as mesmas variáveis gastando um tempo menor.
• A localidade espacial - que pode ser utilizada com o mesmo fim, copiando para
memórias mais rápidas posições próximas daqueles que foram recentemente
utilizados. A localidade espacial nos dados resulta do uso de estruturas de dados,
como os arrays.

O aproveitamento da localidade (espacial e temporal) está na base do uso de caches, que


têm como objetivo reduzir os tempos de acesso do processador à memória primária.

A maioria dos computadores atuais utilizam um sistema de gestão de memória


denominado memória virtual, que utiliza o princípio da localidade para permitir a

Internal Use
utilização pelos programas de uma quantidade de memória superior a existente
fisicamente.

Memória Virtual

Os caches são os elementos da hierarquia de memória mais perto do processador. Têm


como objetivo acelerar a velocidade de acesso a dados por parte do processador. A
memória secundária, constituída por discos magnéticos, tem como função aumentar a
dimensão da memória vista pelo processador além da dimensão da memória primária
instalada no computador.

A disponibilização de um espaço virtual de endereçamento maior que o fisicamente


disponível é conseguido utilizando endereços virtuais. Quando um sistema disponibiliza
memória virtual, todos os acessos feitos pelo processador à memória são feitos com
endereços virtuais. Estes sistemas dispõem de uma Unidade de Gestão de Memória, UGM
(em inglês, Memory Management Unit, ou MMU) que traduz o endereço virtual para um
endereço físico de memória, caso o endereço virtual corresponda a uma posição de
memória. Se o endereço virtual estiver guardado em disco, o sistema vai buscar essa
posição de memória no disco e copiá-lo para a memória principal. Para facilitar a
transação de endereços, e para otimizar a transferência de dados para memória secundária,
os espaços virtual e físico são divididos em grupos chamados páginas.

Sempre que é feito um acesso a um endereço virtual, a UGM verifica se a página


correspondente a esse endereço está em memória ou não. O processo de tradução de
endereços virtuais para endereços físicos usa diversas estruturas físicas e lógicas no seu
funcionamento. As mais importantes são a tabela de páginas e a TLB (do inglês,
Translation Look-Aside Buffer).

Caches

A função de uma cache num sistema de memória é permitir que a maioria dos acessos a
memória sejam feitos rapidamente. Os níveis de cache mais próximos do processador são
feitos com memórias mais rápidas, mas de menor capacidade. Os níveis mais exteriores
são realizados com memórias mais lentas. A memória primária do computador é,
tipicamente, realizada com memórias dinâmicas, cujos tempos de acesso se encontram
tipicamente na gama dos 60ns a 70ns. As memórias de cache encontram-se no mesmo

Internal Use
circuito integrado que o processador, e têm assim tempos de acesso compatíveis com a
velocidade do processador.

Em processadores modernos, é comum existirem diversos níveis de cache internos, que


podem ser ou não complementados com caches exteriores.

Numa operação de leitura, a função do cache é disponibilizar dados e instruções num


período mais curto do que o que é possível quando o acesso é feito à memória principal.

Uma vez que a cache tem menor dimensão que a memória principal, só uma pequena
parte da memória está presente no cache.

Organização de Sistemas de Cache

Para aproveitar a localidade temporal, a cache deve guardar dados que foram
recentemente acessados. Para aproveitar a localidade espacial, a cache deverá guardar
dados que se encontram próximos de dados recentemente acessados.

Um sistema com uma hierarquia de memória que consiste em apenas dois níveis: um
primeiro nível, o cache, e um segundo nível, a memória primária. Na prática, o nível
seguinte poderá não corresponder à memória primária mas apenas a um segundo nível de
cache. Isso não afeta o comportamento do primeiro nível de cache, que será analisado em
seguida.

O sistema de cache é afetado por:

A forma como o espaço de endereçamento da memória principal é mapeado para o espaço


mais reduzido do cache.

O segundo aspecto trata-se do dimensionamento dos blocos de cache, que tem como
objetivo fazer o melhor uso da localidade espacial dos acessos a dados.

A forma como são substituídos dados no cache para maximizar a exploração que é feita
das localidades temporais.

Por fim, a forma como as operações de escrita são tratadas. Uma operação de escrita é
diferente de uma operação de leitura porque o processador pode prosseguir a execução de
um programa sem que a operação de escrita tenha terminado e porque afeta dados em
memória que podem ser acessados por outros dispositivos.

Internal Use
CONCLUSÃO

A memória de um computador é um circuito eletrônico, com compartimentos que


guardam informações temporárias ou permanentes para serem processados com outros
elementos do computador - instruções gerais para o funcionamento das máquinas,
sistemas operacionais, aplicativos, arquivos, enfim toda atividade executada no
computador.

A memória primária é constituída a partir de módulos simples, interligados entre si por


forma a permitir a construção da estrutura de memória desejada. Cada um destes módulos
corresponde a uma dada parte da memória visível pelo processador, podendo a
organização lógica dos módulos ser descrita pelo mapa de memória do processador.

As memórias de diversas velocidades e capacidades são interligadas entre si numa


hierarquia de memória, sendo as memórias mais rápidas e de menor capacidade acessadas
em primeiro lugar, para diminuir o tempo médio de acesso a memória.

REFERENCIAS

Arroz, Guilherme; Monteiro, José; Oliveira, Arlindo. Introdução aos Sistemas Digitais e
Microprocessadores, 2003. E-book.

Ferreira, João Canas. Sistemas de Memória. Disponível em: 06-mem.pdf (up.pt). Acesso
em: jun 2022.

Macedo, Diego. Sistema de Memórias de Computadores. Disponível em: Sistema de


Memórias de Computadores - Diego Macêdo (diegomacedo.com.br). Acesso em: jun
2022.

Internal Use

Você também pode gostar