Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
SISTEMAS DE INFORMAÇÃO AULA 4[1] – MEMÓRIA PRINCIPAL Organização de Computadores PROF :DJACIR MACIEL maciel.estacio@gmail.com Para melhor descrever a organização da memória principal (MP) vamos relembrar alguns conceitos e alguns novos : Memória Principal : é o "depósito" de trabalho do processador, isto é, o processador e a MP trabalham intima e diretamente na execução de um programa. Os programas possuem comandos executados de forma sequencial,assim como ocorre o seu armazenamento; Palavra : É a unidade de informação do sistema processador/MP que deve representar o valor de um número (um dado) ou uma instrução de máquina. Endereço, Conteúdo e Posição de MP : Necessidade de identificação para cada elemento e associar esta identificação a um código que defina sua localização dentro da estrutura; Unidade de Armazenamento : consiste no grupo de bits que é identificado e localizado por um endereço Unidade de transferência : Para a MP, consiste na quantidade de bits que é transferida da memória em uma operação de leitura ou operação de escrita; A memória principal é organizada como um conjunto de N células sequencialmente dispostas a partir da célula de endereço igual a 0 até a última, de endereço igual a N-1; Microeletrônica Memória de núcleos magnéticos Dispositivos voláteis RAM – DRAM Dinâmicas memórias de acesso aleatórios; As memórias de semicondutores possuem várias características interessantes que as tomam extremamente vantajosas : São memórias de acesso aleatório e não acesso sequencial; Ocupam relativamente pouco espaço, podendo muitos bits serem armazenados em uma pastilha (chip); , A espessura dos componentes (capacitor e transistor) é extremamente pequena, da ordem de micros; Possuem tempo de acesso pequeno (da ordem de nanossegundos). A memória principal apresenta boas vantagens no seu uso, acesso dinâmico, boa capacidade de armazenar dados; Mas possui uma desvantagem que é a volatilidade; Em caso de falta de energia, seus dados são perdidos; Considerações sobre a Organização da Memória Principal Embora a organização estrutural das memórias de semicondutores,seja considerada simples, algumas observações interessantes, têm servido de base para modelos diferentes ou discussões técnicas. A quantidade de bits de uma célula A quantidade de bits de uma célula A quantidade de bits que pode ser armazenada em cada célula é um requisito definido pelo fabricante. Uma célula contendo M bits permite o armazenamento de 2M combinações de valores, sendo uma de cada vez. A quantidade de bits de uma célula A relação endereço x conteúdo de uma célula Operações do Processador com a Memória Principal Escrita (write) - armazenar informações na memória; Leitura (read - recuperar uma informação armazenada na memória. A operação de leitura não destrói o conteúdo da memória, ela apenas providencia a transferência de uma cópia do que está armazenado; Enquanto a informação for sendo utilizada, ela continua armazenada; Somente a operação de escrita é destrutiva. Antes de descrever as operações entre a MP e o processador,precisamos observar alguns conceitos : Barramentos (de dados-BD, de endereços - BE e de controle - BC); Registradores de dados e endereços da memória; Controlador da memória. Operações MP x CPU Barramentos de Dados : Interliga o RDM (MBR) à MP para transferência de informações entre MP e o processador É bidirecional isto é, ora os sinais percorrem o barramento do processador para escrita ou leitura; Registrador de dados de Memória (Memory Buffer Register) Registrador que armazena temporariamente a informação que está sendo transferida MP para o processador; Permite armazenar em alguns casos a mesma quantidade de bits do barramento de dados; Registrador de Endereços de Memória (REM ) Memory addresd Register (MAR) Registrador que armazena temporariamente o endereço de acesso a uma posição de memória; Permite armazenar a mesma quantidade de bits do barramento de endereços; Barramento de endereços : Interliga o REM a MP para transferência dos bits que representam um determinado endereço; É unidirecional,visto que o processador é quem aciona a memória para a realização de escrita ou leitura; Barramento de Controle : Conjunto de fios utilizado para interligar a MP a unidade de controle; Possui a finalidade de passagem de sinais de controle durante uma operação de leitura ou escrita; É bidirecional; Controlador da Memória : Tem por função gerar os sinais necessários para controlar o processo de leitura ou escrita; Além de interligar a memória aos demais componentes do sistema de computação; É o controlador que possui a lógica requerida para receber e interpretar os sinais de controle do processador e responder a ele nas operações de leitura e escrita; Além disso, decodifica o endereço colocado no barramento de endereços, localizando a célula desejada e liberando os bits para o barramento de dados. O controlador de memória faz parte de um chip conhecido como Chipset ou nos muitos casos atuais vem diretamente no processador Controlador de Memória Operação de Leitura Os passos que descrevem a referida operação de leitura são: 1) REM <- de outro registrador do processador 1a) O endereço é colocado no barramento de endereços 2) Sinal de leitura no barramento de controle 2a) Decodificação do endereço e localização da célula (controlador de memória). 3) RDM - MP(REM) pelo barramento de dados. 4) Para outro registrador do processador <- RDM. No primeiro passo, a unidade de Controle, UC do processador inicia a operação de leitura através da transferência do endereço 1324 de um de seus registradores específicos para o REM e coloca o sinal de leitura (READ) no barramento de controle para indicar aos circuitos de controle da MP o que fazer em seguida. A MP decodifica o endereço recebido e transfere seu conteúdo para o RDM através do barramento de dados. Do RDM, então, a informação desejada é transferida para o elemento do processador destinatário final (normalmente é um dos registradores do próprio processador). A realização completa dos quatro passos descritos gasta um tempo de acesso, mas não garante que a MP possa realizar logo em seguida uma nova operação. Estar pronta ou não para realizar uma nova operação depende do tipo de memória RAM utilizada. As memórias estáticas (SRAM) permitem que outra operação (de leitura ou escrita) seja imediatamente realizada após leitura ou escrita; No entanto as memórias dinâmicas DRAM),não conseguem realizar essa função ; Operação de Escrita A realização de uma operação de escrita segue procedimento semelhante ao da operação de leitura, exceto, pelo sentido da transferência, que é inverso, isto é, do processador para a MP. Os passos que descrevem a referida operação são: 1) (REM) ---- (outro registrador) - o Processador coloca endereço no REM; 1a) O endereço é colocado no barramento de endereços 2) (RDM) --- (outro registrador) o processador coloca no RDM o dado a ser transferido; 3)Sinal de Escrita – O processador aciona o sinal Write pelo barramento de controle; 4) (MP(REM)) ---- (RDM) O dado é transferido para a célula de memória pelo barramento de dados Capacidade de MP Na realidade, imaginarmos a MP como uma sequencia contínua de células, desde a célu1a de endereço 0 (zero) até a ú1tima célula; Na pratica essas memórias são organizadas fisicamente de forma diferente. Na maioria delas são construídas como matrizes de bits (divididas em linhas e colunas), algumas vezes matrizes quadradas, mesmo número de linhas e de colunas e outras vezes retangular, com mais colunas que linha; Considerando que a memória precisa suportar a execução de um ou mais programas é necessário que ela tenha capacidade para estas operações; Estrutura de uma memória SRAM Capacidade de memória refere-se genericamente à quantidade de informações que nela podem ser armazenadas em um instante de tempo; Tratando-se de um computador, cuja unidade básica de representação de informação é o bit ,podemos expressar a capacidade de uma memória com os valores : 512bits ; 16.384 bits ; No entanto à medida que esses valores se tornam maiores, ficam impraticável representar esses números por bits; Na realidade não é possível armazenar dois ou mais valores em uma célula de memória,ou seja , em um único endereço somente poderá ser localizado e identificado um valor ( endereço); Desta forma o mais importante para determinar a capacidade de uma memória é a quantidade de endereços que poderemos criar e manipular naquela memória; Na realidade, o mais comum, principalmente quando se manipulam valores numéricos, é um dado ser armazenado ocupando várias células e, consequentemente, vários endereços. Por exemplo, se a MP de um certo sistema estiver organizada com células de 8 bits de tamanho e os dados forem definidos com 32 bits, então um dado será armazenado em quatro células; Como não se podem armazenar dois números no mesmo endereço ,a quantidade de endereços tem mais sentido de individualidade de informação do que qualquer outra unidade. Na prática, então, usa-se a quantidade de células para representar a capacidade da memória e, como no mercado informal de compra, venda, assistência técnica etc ; Em outras palavras, é normal procurar-se memória para compra informando ao vendedor: "preciso de 16 megas", o que significa, na realidade: preciso de memória com 16 megacéIulas de 1 byte cada uma, isto é, preciso de 16 megabytes de memória. Cálculos com Capacidade da MP (RAM) T = N x M T= capacidade da memória ; N= Quantidade de células; M= quantidade de bits em cada célula. Por exemplo : 1)Considere uma memória com N =512 células e M= 8 bits por células, calcule a capacidade da memória. T = N x M = 512 x 8 = 4096 bits ou 4Kbits; Exemplos : Tipos e Nomenclatura de MP A memória principal dos computadores moderno é fabricada com tecnologia de semicondutores, o que lhes permite elevadas velocidade de acesso e transferência de bits; Como são circuitos apenas elétricos em funcionamento ,a velocidade de percurso e um sinal elétrico é nominalmente a velocidade da luz (300.000 km/s. A memória principal é a memória de trabalho do processador, seu grande "bloco de rascunho", onde os programas (e seus dados) se sucedem em execução, uns após os outros; Ou seja, para que um programa seja executado é necessário que suas instruções e os dados por elas manipulados estejam armazenados, ainda que temporariamente, na memória principal (MP). Por exemplo, quando vamos trabalhar um texto utilizando um processador de textos tipo Microsoft Word, é requerido que o código do Word esteja armazenado na MP para garantir velocidade no processamento; A tecnologia RAM tem variações, que foram evoluindo com o tempo, as quais redundaram em vários diferentes tipos. Estes tipos podem ser primeiramente divididos duas vertentes: SRAM (Static RAM) e DRAM (Dynamic RAM), isto é, a RAM estática e a RAM dinâmica; O primeiro tipo, mais rápido e de custo mais elevado, costuma ser utilizado na construção das memórias cache; E o outro tipo, DRAM, é aquele usado genericamente nas memórias principais tradicionais. A tecnologia RAM, constituída de memórias eletrônicas, de tempo de acesso igual independente da célula localizada, pode servir para construção de dois tipos de memória no que se refere à sua aplicação em um sistema: Memórias que servem para se ler e escrever nelas (memórias L/E), denominadas em inglês R/W memory; Memórias onde os programas aplicativos somente podem ler seu conteúdo, não lhe sendo permitido gravar em suas células, as memórias do tipo ROM (read only memory, memória somente para leitura); Estas têm uma notável particularidade, que é o fato de não serem voláteis, como as memórias L/E. Embora seja rápida (tempo de acesso pequeno) e de acesso aleatório (mesmo tempo no acesso a qualquer célula), a RAM possui algumas desvantagens, entre as quais a volatilidade, isto é, perde seu conteúdo quando a corrente elétrica é interrompida; Uma vez que o processador nada realiza sem as instruções, é óbvio que e1e deve possuir uma certa quantidade de memória não volátil. Isto é, um local onde estejam sempre armazenadas as instruções que automaticamente iniciam a operação e a inicialização do sistema, tão logo a alimentação elétrica seja ligada; Em microcomputadores costuma-se chamar isso de programa bootstrap, ou simplesmente boot, enquanto outros fabricantes chamam IPL Initial Program Load (Carregamento do Programa Inicial), entre outros nomes. Esse tipo de memória,feita de semicondutores e, portanto, RAM), além de ter que ser não volátil (para não haver a perda do programa de boot), também não deve permitir que haja eliminações acidentais; Trata-se de um programa que deve estar permanentemente armazenado e não pode sofrer alterações por parte de nenhum outro programa. Memórias que armazenam este tipo de programas devem permitir apenas leitura; São chamadas de memórias de ROM - Read Only Memory (memórias somente para leitura),e elas devem ser não voláteis; No entanto, o tempo de acesso em memórias ROM também é constante, independentemente da localização física da célula e conseguinte, elas também são memórias RAM. Memória ROM As memórias DRAM vêm evoluindo em termos de aumento de capacidade e de velocidade , redundando em diversos tipos: EDO DRAM, BEDO DRAM, SDRAM, RDRAM; Memórias do Tipo ROM MASK ROM : O conjunto de bits (programa especificado pelo usuário) é inserido no interior dos elementos da pastilha durante o processo de fabricação. Chama-se a isso em inglês de processo hardwired, pois cada bit (seja 0 ou 1 conforme o programa) é criado já na célula apropriada; Após o término da fabricação, a pastilha ROM está completa, com o programa armazenado, e nada poderá alterar o valor de qualquer de seus bits. PROM Para atenuar o problema do custo fixo da máscara (matriz), desenvolveu-se uma variação daquele tipo de memória ROM pura, denominado PROM (Programmable Read only Memory), ROM programável; Nela, como nas ROM puras, somente é possível gravar os bits desejados uma única vez, porém com a diferença de que a gravação dos bits é posterior à fase de fabricação da pastilha, embora deva ser realiza por dispositivo especial. EPROM e EEPROM Posteriormente foram desenvolvidos outros dois tipos de ROM, os quais possuem uma particularidade interessante; Conquanto se mantenham somente para leitura (ROM) de programas aplicativos, durante uma execução normal, elas podem ser apagadas (através de um processo especial, que depende do tipo) e regravadas, sendo portanto reutilizáveis São elas: EPROM (Erasable PROM) - PROM apagavel, a EEPROM (Electrically or Electronically EPROM) ou EPROM eletrônica, também chamada EAROM (Electrically Alterable ROM) e a memória Flash ou Flash-ROM. ERROS Em todo sistema de transmissão de informação a distância (telecomunicação) há sempre a possibilidade de ocorrerem deformações, ou até mesmo destruição de parte da informação transmitida (ou toda); Isso ocorre devido a interferências no meio de transmissão. A memória principal (ou qualquer outro tipo de memória) utiliza um meio de transmissão (barramento de dados) para o trânsito da informação entre a MP e a UCP; Esse trânsito sofre interferências que podem alterar o valor de um ou mais bits (de 0 para 1 ou de 1 para 0) ou até mesmo destruí-los. Os atuais sistemas de memória possuem mecanismos capazes de detectar e corrigir tais erros. O processo pode ser resumido nas seguintes etapas : Os grupos de M bits de informação que serão gravados nas célu1as da MP sofrem um processamento específico, em um dispositivo próprio para detecção de erros; Esse processamento é realizado segundo as etapas de um algoritmo determinado (Â) e produz, como resurtado, um conjunto de K (M) bits. Serão gravados, então, em células com capacidade para armazenar M + K bits (e não apenas os M bis de informação); Ao ser recuperado o valor em bits de uma determinada célula (operação de leitura), o sistema de detecção é acionado; O mesmo algoritmo inicial (A) é executado sobre os M bits de informação armazenados,obtendo- se um novo conjunto de K bits (K2). Os K (M) bits armazenados são comparados com os K (K2) bits acima calculados, obtendo- se um entre os seguintes possíveis resultados: Ambos os conjuntos de K bits têm o mesmo valor, o que da célula desejada são transmitidos; os conjuntos são diferentes, concluindo-se pela existência de erro no bloco de M bits. O erro pode ser corrigido ou não, dependendo de como o sistema foi projetado. Obrigado !!!