quinta-feira, 12 de dezembro de 2013

ESTRUTURA BÁSICA DE COMPUTADORES



Estrutura de Computadores

Todos os computadores contém 5 unidades essenciais:
  • Lógica e aritmética: área da CPU para realizar funções lógicas e aritméticas;
  • De memória: armazena dígitos binários e dados manipuláveis e é controlada pela unidade de controle;
  • De entrada: dispositivos que transferem dados para o processador;
  • De saída: dispositivos que transferem dados do processador para o mundo exterior;
  • De controle: comanda as operações de todas as demais unidades; 




Unidade Lógica e Aritmética (ULA)
Funções:
  • Desempenha funções de processamento de dados;
  • Executar funções lógicas e aritméticas nos dados dispostos na memória, segundo informações da Unidade de Controle;
  • Armazena dígitos binários;
Contém 2 registradores internos:
  • Registrador B: armazena valores trazidos da memória;
  • Acumulador: armazena um operando para qualquer instrução lógica ou matemática;
Unidade de Controle (UC)
Funções:
  • Controla a operação da CPU;
  • Comanda a operação de todas as outras unidades de controle;

Funcionamento básico:
  1. A unidade de controle quer buscar uma instrução na memória;
  2. A unidade de controle envia um comando de leitura e um endereço;
  3. Ocorre a transferência da instrução oriunda da memória para a unidade de controle;
  4. Os circuitos lógicos da unidade de controle decodificam a instrução recebida;
  5. A unidade de controle envia um sinal para as demais unidades, informando que tem uma instrução a ser executada;
  6. A unidade de controle executa a instrução.
O  Microprocessador
O microprocessador (ou CPU) geralmente é um circuito integrado que agrega a ULA e a UC.
Algumas funções:
  • Fornece sinais de controle e de temporização para os componentes do microcomputador;
  • Busca e decodifica instruções e dados recebidos da memória;
  • Transfere dados da memória para outros periféricos;
  • Transfere dados para a memória;
  • Executa operações aritméticas e de caráter lógico;
A arquitetura de Von Neumann tornou os computadores mais flexíveis. Isto permitiu que não trocássemos de CPU cada vez que trocássemos também de operação. Se em um momento quiséssemos transferir uma informação para memória e em outro quiséssemos executar uma instrução, logicamente teríamos de trocar todo o procedimento para que o processador reconhecesse a nova instrução. O modelo proposto por John Von Neumann, em 1945, modificou a estrutura computacional corrente da época e mostrou que podemos apenas trocar o software alocado na memória se quisermos executar outro procedimento.

SUBSISTEMA DE PROCESSAMENTO



Processadores

A execução de operações de algoritmos em processadores ocorre através de uma organização criada por Von Neumann.
Para que processadores possam executar instruções, no entanto, diferentes componentes precisam estar presentes em sua arquitetura. A organização desses componentes permite a execução das instruções através de uma serie de etapas chamadas de micro-instruções. A execução de uma seqüência de micro-instruções acaba por executar cada instrução dos algoritmos que os processadores executam.



1) Contador de instruções:
Pequena memória que guarda o endereço de memória da próxima instrução a ser executada: a instrução que está no endereço que corresponde ao conteúdo do contador de instruções é a próxima instrução que o processador irá executar.

2) Registrador de instruções:
Pequena memória que armazena as instruções que serão executadas pelo processador. Como inicialmente todas as instruções estão na memória de instruções, estas precisam ser armazenadas internamente no processador para execução.
 
3) Decodificador de instruções:
Circuito que decodifica, ou seja, descobre o que é a instrução (o que ela faz) e quais os seus operandos. O decodificador de instruções descobre o que tem na palavra de instrução (palavras de instrução foram estudadas na aula 3).

4) Banco de registradores:
Registradores podem ser entendidos como pequenas memórias que se localizam internamente em processadores. Os registradores que armazenam as variáveis dos algoritmos são chamados de banco de registradores. Existem registradores para armazenar também palavras de instrução (registrador de instruções, item 2, acima) e algumas informações de controle para o processador, como por exemplo, se uma instrução resultou em resultado negativo. Os processadores possuem tipicamente entre 8 e 128 registradores.

5) Unidade Lógica e Aritmética (ULA):
É a unidade executora do processador. A ULA é composta por uma série de circuitos que executam as operações lógico-aritméticas dos processadores: todas as instruções que o processador possui em seu conjunto de instruções devem poder ser executadas na sua ULA. Por exemplo, se o processador possuir uma instrução de multiplicação no seu conjunto de instruções, a ULA deve possuir um circuito multiplicador. Lembre que, como visto na aula 3, mesmo que determinada instrução não esteja presente no conjunto de instruções (e portanto não pode executar na ULA) ainda assim o processador é capaz de executa-la.

6) Barramentos de comunicação internos.
São os canais de comunicação que existem internamente na arquitetura do processador. Estes canais permitem que os componentes internos do processador consigam se comunicar, o que é essencial para a execução de instruções, como pode ser visto na figura 1, onde é mostrada a execução de uma instrução através de micro-instruções. Observe também que cada micro-instrução executa sobre um componente interno do processador (de acordo com as figuras a seguir); aí se pode perceber a importância de cada um desses componentes para que a instrução possa ser executada.

As principais micro-instruções presentes em qualquer processador são:
1) Endereçamento da próxima instrução a ser executada: a instrução é endereçada através do envio do conteúdo do Contador de Programa (PC), que está localizado na Unidade de Controle (UC), para a memória de instruções. Este conteúdo representa o endereço da próxima instrução a ser executada. Estes passos são observados na figura abaixo;





2) Leitura da instrução da memória de instruções: a memória faz a leitura de uma palavra de instrução. A figura abaixo representa essa etapa;




3) Escrita da instrução no registrador de instruções: a instrução lida é escrita dentro do processador no registrador de instruções. No nosso exemplo o valor da instrução lida é 1B;



4) Decodificação dos operandos: a instrução é decodificada, ou seja, o processador passa a conhecer qual é a instrução (que operação ela executa) e quais são os operandos fonte e destino (ver aula 3, sobre operandos). Esse passo pode ser visualizado na figura abaixo.




5) Leitura dos operandos da memória ou dos registradores: os operandos fonte são lidos da memória ou dos registradores e colocados nas entradas da ULA;



6) Execução da instrução: quando a ULA recebe os operandos fonte, então o próximo passo será a execução da operação através da ULA ,como é encontrado na figura a seguir;



7) Escrita do resultado: a saída da ULA, que contém o resultado da operação que acabou de ser executada é escrita no operando destino, que pode estar em algum registrador ou na memória. Esse passo é demonstrado na figura a seguir.




segunda-feira, 18 de novembro de 2013

SUBSISTEMA DE MEMÓRIA


1. O que é memória de computador?

Na informática, memória representa todos os dispositivos que podem armazenar informações, temporária ou permanentemente. Ou seja, são os componentes internos que armazenam informações (memória RAM, disco rígido, pendrive, cartão de memória, etc). A unidade básica de memória é o dígito binário (os famosos 0 e 1, que são os dados manipulados por todo o computador).




Quais tipos de memória existem?


2. Quais tipos de memória existem?

Dois tipos de memória abrangem praticamente os outros tipos: Memória principal e Memória secundária.

Memória principal são memórias que o processador precisa acessar para enviar os dados; em muitos casos sem essas memórias o processador pode simplesmente não funcionar. Elas armazenam os dados apenas temporariamente, ou seja, quando o computador fica sem energia da bateria ou é reiniciado, perde-se as informações. Elas são acessadas diretamente pelo processador, sem passar por outro lugar. Possuem alta velocidade e desempenho. Alguns exemplos de memória principal são: memórias RAM e memórias Cache.

Nem sempre você vai precisar de todas :D*Pentes de Memória Ram

A memória secundária são as memórias de armazenamento. Elas servem para guardar as informações permanentemente. Ou seja, somente perdem informações quando são formatadas, tem arquivos excluídos ou danificados. Essas memórias precisam passar primeiro por memórias principais antes de serem usadas pelo processador. Geralmente são mais lentas que as memórias principais, mas tem uma capacidade de armazenamento muito superior. Exemplos de memórias secundárias são: discos rígidos, cartões de memória, pendrives, HDs externos, etc.

Exemplo de memória secundária.*Disco Rígido

Dentro da memória principal temos alguns subtipos de memória: Memórias voláteis e memórias não-voláteis.

  Memória volátil: Precisa de energia para armazenar dados. Ou seja, os dados são perdidos quando o computador é desligado. São fabricadas em duas tecnologias: dinâmica e estática, sendo que a dinâmica é um tipo de memória que precisa ser atualizada e recarregada constantemente (função conhecida como refresh).

 O funcionamento basicamente funciona da seguinte forma: O transistor indica se a célula está vazia (com 0) ou cheia (com 1). Se estiver vazia, o capacitor é carregado. Mas é como se o capacitor sempre estivesse com "defeito", pois ele se descarrega muito rapidamente, por isso são necessários vários refreshes para manter os dados armazenados.
 No caso das memórias estáticas, a informação fica armazenada durante todo o tempo, mudando apenas durante algum pulso de clock novo. Esse tipo de memória não tem o "defeito" do capacitor (ela não se "esvazia"). Em teoria as memórias estáticas possuem um desempenho muito superior às memórias dinâmicas (que precisam que o processador sempre tenha o trabalho de verificar o estado das células e recarregá-las).

Mas, como o tempo de refresh está cada vez reduzindo, e as memórias dinâmicas sendo bem mais baratas, atualmente as mais usadas são as dinâmicas. 

Memória não-volátil: Guardam informações mesmo com o computador desligado (ou seja, nessa categoria enquadram-se também as memórias secundárias). Das memórias principais não voláteis destacam-se as memórias ROM (traduzidas, memórias de acesso somente-leitura). Essas memórias geralmente são usadas em um computador para gravar a BIOS (espécie de chip que funciona com um micro-programa para controlar todos os dispositivos de um computador. Ele se inicia quando é ligado o computador, aquela famosa tela preta que aparece quando apertamos o botão de ligar do computador).

Exemplo de chip localizado na placa-mãe.*Memória ROM

 Das memórias ROM existentes, podemos citar: ROM (gravada somente na fábrica uma única vez), PROM (gravada pelo usuário uma única vez), EPROM (gravada e regravada utilizando-se de técnicas de luz ultravioleta), e EEPROM (memória gravada e regravada quantas vezes necessário).

Essas memórias necessitam de uma bateria para manter os dados de usuário gravados para a inicialização personalizada do computador; caso essa bateria perca a carga, ou seja, removida as configurações de fábrica são restauradas.

Ficou confuso?


O esquema abaixo poderá lhe ajudar:








Que tipos de dispositivos de um computador possuem memória?


3. Que tipos de dispositivos de um computador possuem memória?

  Bom, de acordo com o conceito que vimos acima, todo dispositivo que puder armazenar dados é uma memória.
 Exemplos:

1. Discos rígidos, SSDs, pendrives, cartões de memória.
2. Unidades óticas (CD, DVD, Blu-ray).
3. Memória RAM (memórias para uso e memória CMOS).
4. Memória Cache do processador (usada para aumentar a performance e regular o uso do processador).
5. Memória ROM (usada nas BIOS).
6. Memória cache do disco rígido.
7. Placas de vídeo (possuem memória).
8. Entre outros.

Como funcionam os diferentes tipos de memória?


4. Como funcionam os diferentes tipos de memória?

 O trabalho de ligar o computador é simples - para o usuário.

 Veja o passo a passo que um computador realiza:

 1. A BIOS, que contém uma memória CMOS, verifica os dados de inicialização dos dispositivos. Ela realiza uma série de verificações e até mesmos ajustes para a inicialização do micro.

 2. Caso esteja tudo certo, é ativado o POST. O POST é uma série de testes nos dispositivos para ver se tudo está funcionando e se estão sendo reconhecidos. (Na tela, para o usuário, ele reconhece os discos e realiza testes na memória RAM).

 3. A BIOS principal ativa outros BIOS (discos rígidos especiais, placas de vídeo, etc).

 4. A BIOS localiza o MBR (Master Boot Record, tabela de partição mestre, onde são gravados os dados para que o disco rígido que contenha o sistema operacional seja carregado.

5. O processador entra em cena manipulando os dados e os enviando ás memórias corretas (memória RAM, por exemplo).

6. Se o mesmo programa for executado mais de uma vez, a memória cache, responsável por guardar as informações de programas usados, entra em cena, enviando os dados e deixando o processador livre para outras tarefas.

 7. A memória RAM armazena os dados enviados pela memória cache que atualmente estão em uso.

 8. O disco rígido salva e lê os dados essenciais de acordo com a ordem do processador.

É claro que esse processo é bem mais detalhado e inclui outras rotinas que não podemos especificar nessa matéria. Mas o funcionamento básico é suficiente para você ter uma idéia de como funciona

Esquema simples de funcionamento de uma memória RAM


5. Esquema simples de funcionamento de uma memória RAM

E abaixo, um esquema de alguns componentes da memória RAM, para que você possa entender quais são os componentes:

Esquema da memória.
Esquema da memória.


Referências:
http://pt.wikipedia.org/wiki/Mem%C3%B3ria_(computador)
http://www.tecmundo.com.br/memoria/2181-qual-a-diferenca-entre-memoria-ram-estatica-e-dinamica-.htm 
http://informatica.hsw.uol.com.br/questao452.htm
http://pt.wikipedia.org/wiki/Bios
http://www.tecmundo.com.br/armazenamento/9415-como-funcionam-as-diferentes-memorias-quando-o-computador-esta-em-uso.htm
http://informatica.hsw.uol.com.br/memoria-rom2.htm
http://blogscarcom.com.br/wp-content/uploads/2011/07/11.jpg
http://matron.com.br/produtos/7053.jpg