quinta-feira, 20 de outubro de 2011

Pipeline

Introdução
Na década de 70 surge uma nova técnica chamada pipeline, onde a execução das instruções é dividida em várias fases consecutivas e o processador é organizado em estágios correspondentes para execução dessas
instruções.

Pipeline é uma técnica de implementação de processadores que permite a sobreposição temporal de diversas fases de execução de instruções.

Em outras palavras, é uma técnica de projeto onde o hardware processa mais de uma instrução de cada vez sem esperar que uma instrução termine antes de começar a outra.

Exemplo da lavandaria  


 Divisão da Instrução em Estágios
Tradicionalmente, as instruções do MIPS (Microprocessor without interlocked pipeline stages Microprocessador sem estágios interligados de pipeline) são executadas em até cinco passos:


 1) Busca Instrução na memória
2) Leitura dos registradores e decodificação das instruções
3) Execução de operação ou cálculo de endereço
4) Acesso a operando na memória
5) Escrita do resultado em registrador
.
Pipeline:

Clique para Aumentar

Síntese final
Em suma, o pipeline melhora o desempenho por meio do aumento do throughput das instruções, ou seja, aumento o número de instruções executadas na unidade de tempo, e não pela diminuição do tempo de execução de uma instrução individual.

Speedup ideal é o número de estágios no pipeline.

Throughput (ou taxa de transferência) é a quantidade de dados transferidos de um lugar a outro, ou a quantidade de dados processados em um determinado espaço de tempo.

 Speedup potencial = número de estágios do pipeline.

quarta-feira, 19 de outubro de 2011

CPU - Instruções

Definição de Instruções de Máquina:
O projeto de um processador é condicionado ao conjunto de instruções de máquina as quais se deseja que ele execute. Uma das mais fundamentais análises e decisões do projeto envolve o tamanho e a complexidade do conjunto de instruções.Num processador, quanto menor e mais simples for o conjunto de instruções, mais rápido será o seu ciclo de tempo.

Atualmente há duas tecnologias de projeto de processadores empregadas pelo mercado:
  • Sistema com conjuntos de instruções complexo 
           (Complex Instruction Set Computer ­ CISC);
  • Sistema com conjunto de instruções reduzido 
           (Reduced Instruction Set Computer ­ RISC).

 Definição Complex Instruction Set Computer ­ "CISC":

É a arquitetura que é capaz de executar um conjunto complexo de instruções,sua interpretação era feita através de microinstruções, e com  isso a sua execução é mais lenta.   
     Apesar de um processador CISC ser capaz de executar centenas de instruções diferentes, apenas algumas são usadas freqüentemente.O uso de microprogramação era uma característica que permitia aos projetistas implementar instruções complexas em hardware.
    Outras características dessa arquitetura são a redução de custos globais do sistema, redução dos custos de desenvolvimento de software e da quantidade dos mesmos, diminui a distância entre a linguagem humana e de máquina, aumenta a eficiência dos programas escritos em linguagem de alto nível,melhora a compactação do código facilitando a detecção e correção de erros.

Definição Reduced Instruction Set Computer ­ RISC:

Com a tentativa de  minimizar a distância entre o que a máquina podia realizar e entre o que a programação de alto nível exigia foi criado um outro tipo de processador que privilegiava instruções mais simples, denominado como RISC(Reduced Instrunction Set Computer).
     Essa arquitetura diferentemente da arquitetura CISC,mais antiga, possuía uma redução no número de instruções que era em torno de 50, já que uma máquina CISC continha em torno de 200 a 300 instruções.Outra grande vantagem dessa arquitetura e que a sua execução era feita diretamente no hardware,  o que resultou em uma maior velocidade na execução das instruções.Isso ocorria porque a arquitetura RISC somente fazia uso das instruções CISC que eram utilizadas com mais frequência(instruções simples).
Por outro lado a desvantagem dessa arquitetura era que não havia compatibilidade com os computadores e softwares da época.

 Formato das Instruções:

Cada instrução consiste num grupo de bits que pode ser dividido em duas partes:
•  a primeira parte indica o que é a instrução e como será executada, 
sendo constituída de um só campo;

•  a segunda parte refere­-se ao(s) dado(s) que será(ão) manipulado(s) 
na operação, podendo ser constituída por mais de um campo.

Exemplo de campos :

Instrução para adição de dois valores (operandos 1 e 2), indicando o endereço 
(operando 3) a ser armazenado o resultado: OP3 ← OP1 + OP2


Instrução para adição de dois valores (operandos 1 e 2), armazenando­se o 
resultado no local do operando 1: OP1 ← OP1 + OP2

Utilizando-­se o acumulador para armazenar inicialmente um dos operandos e 
depois armazenar o resultado da soma: ACC   ACC + OP

Tamanho das instruções:
A definição dos códigos de operação do conjunto de instruções de um processador pode ser feita por duas maneiras:
•  instruções com C.Op. de tamanho fixo;
•  instruções com C.Op. de tamanho variável.
Tipos de Instruções:

No caso de implementação de instruções com um C.Op. de tamanho variável, há a possibilidade de redução de espaço ocupado na MP, já que permite a codificação de um número maior de instruções usando uma menor quantidade de bits.
Esse tipo de implementação permite maior versatilidade entre as quantidades de bits do código de operação e as dos campos operandos, criando um conjunto de instruções com maior número de instruções, com quantidades diferentes de operandos, sem aumentar em demasia o tamanho total das instruções.

Podemos, então, classificar as instruções de máquina nos seguintes tipos, dependendo da sua função:
  • Processamento de dados: instruções aritméticas e lógicas;
  •  Armazenamento de dados: instruções de memória;
  •  Movimentação de dados: instruções de E/S;
  •  Controle: instruções de teste e desvio.
Ciclo de Instrução 








quinta-feira, 13 de outubro de 2011

CPU - Central Processing Unit


A Unidade Central de Processamento " UCP" 
A Unidade Central de Processamento " UCP"é a responsável pelo processamento e execução dos programas armazenados na Memória Principal. As funções da UCP são: executar as instruções e controlar as operações no computador.

Unidade Lógica e Aritmética (ULA)
A  ULA  (“ALU”)  é  o  dispositivo  do  processador  que  efetivamente  executa  as  operações  matemáticas  com  os  dados.  Tais  operações podem ser, por exemplo:

  • Soma, subtração, multiplicação e divisão;
  •  Operação lógica AND, OR, XOR;
  •  Deslocamento à direita, deslocamento à esquerda; Entre outros.
Unidade de Controle (UC)
A "UC" é o dispositivo mais complexo do processador.
Ele possui a lógica necessária para realizar a movimentação de dados e instruções “de” e “para” o processador, através dos sinais de controle que  emite  em  instantes  de  tempo  determinados  conforme  uma  programação prévia. A sua função na CPU e controlar a transferência de dados e instruções para dentro e fora da CPU .

Registrador de Instrução – RI (Instruction Register – IR)
Tem a função de armazenar a instrução a ser executada pela UCP. 
No  início  do  ciclo  de  instrução  a  UC  emite  sinais  de  controle sequenciados no tempo para a realização do ciclo de leitura, no qual a  instrução  é  buscada  na  memória  e  armazenada  no  RI,  via  barramento de dados e RDM

Contador de Instrução – CI (Program Counter – PC)
Armazena o endereço da próxima instrução a ser executada, sendo crucial  para  o  processo  de  controle  e  de  sequenciamento  da execução dos programas. Assim que a instrução a ser executada é lida da memória para a UCP, o conteúdo do CI é automaticamente modificado,  sendo  nele  armazenado  o  endereço  da  próxima instrução na sequência

Registrador  de  Dados  da  Memória  –  RDM  (Memory  Buffer Register ­ MBR)
O  RDM  tem  tamanho  (em  bits)  geralmente  igual  ao  do  barramento  de dados,  sendo  que  o  tamanho  deste  último  tem  tamanho  múltiplo  do tamanho da palavra do processador.

Registrador de Endereços da Memória – REM (Memory Address Register ­ MAR)
Armazena  o  endereço  da  memória  onde  a  informação  deve  ser  lida  ou escrita.  No  ciclo  de  busca  de  uma  instrução,  armazena  o  endereço  da memória onde se encontra a instrução a ser executada, fornecido pelo CI. 
Tem tamanho (em bits) igual ao tamanho dos endereços de memória e ao tamanho do barramento de endereços.

 Relógio
O relógio (clock)  é um dispositivo gerador de pulsos cuja duração  é chamada de ciclo.
A quantidade de vezes em que este pulso básico se repete em um segundo  define  a  unidade  de  media  do  relógio  denominada 
frequência, a qual também é utilizada para definir a velocidade da UCP. Servem para:
  •  Sincronizar,  ou  seja,  permitir  que  duas  ou  mais  ações ocorram no mesmo instante de tempo.
  •  Cadenciar  as  ações  realizadas  em  um  determinada  positivo, ou seja, controlar a velocidade com que elas ocorrem.

quinta-feira, 6 de outubro de 2011

Processadores atuais da AMD

Processadores para computadores fixos 
AMD Phenom™ II X3


Modelo -                                         705e
Velocidade do núcleo (MHz) -       2500
Potência -                                       65 W
NÚCLEOS -                                     3 


Modelo -                                         700e
Velocidade do núcleo (MHz) -       2400
Potência -                                       65 W
NÚCLEOS -                                     3 


 Processadores para portáteis 
                                                                     AMD Athlon™ II X2

Modelo -                                         250
Velocidade do núcleo (MHz) -       3000
Potência -                                       65 W
NÚCLEOS -                                     2

Modelo -                                         240e
Velocidade do núcleo (MHz) -       2800
Potência -                                       45 W
NÚCLEOS -                                     2


Processadores para servidores 
                                                               Six-Core AMD Opteron™

Modelo -                                         8431
Velocidade do núcleo (MHz) -       2400
Potência -                                       75 W
NÚCLEOS -                                     6



Modelo -                                         8439 SE
Velocidade do núcleo (MHz) -       2800
Potência -                                       105 W
NÚCLEOS -                                     6

sexta-feira, 30 de setembro de 2011

Processadores atuais da Intel

Lista de comparação de processadores da Intel

 

Laptop

Clica para alargar

Desktop

          Clica para alargar


Xeon




Intel® Xeon® Processor X5670 




    Clica para alargar


Intel® Xeon® Processor X5570 



    Clica para alargar






quinta-feira, 29 de setembro de 2011

Evolução dos Processadores




Clique para alargar


Clique para alargar


Clique para alargar

~

Clique para alargar

segunda-feira, 3 de janeiro de 2011

Códigos bip para fabricante Intel


1 Bip Curto
Este é um Bip com sucesso emitido pelo BIOS
1 Bip longo
Falha no Refresh (refresh Failure)
1 Bip longo e 2 bips curtos; 1 Bip longo e 3 bips curtos
Falha na placa de Vídeo
2 Bips curtos
Falha Geral
2 Bips longos
Erro de paridade
3 Bips longos
Falha nos primeiros 64 KB da memória RAM
4 Bips Longos
Timer não operacional
5 Bips
Erro no processador
6 Bips
Falha no Gate 20 (8042 - Gate A20 failure)
7 Bips
O processador gerou uma interrupção de excepção
8 Bips
Erro na memória da placa de vídeo
9 Bips
Erro na memória ROM (ROM checksum error)
10 Bips
Falha no CMOS shutdown register
11 Bips
Problemas com a memória cache

1 Bip Curto – Post Executado com sucesso: Este é um Bip feliz emitido pelo BIOS quando o POST é executado com sucesso. Caso o seu sistema esteja inicializando normalmente e você não esteja ouvindo este Bip, verifique se o speaker está ligado à placa mãe correctamente.

1 Bip longo – Falha no Refresh (refresh Failure): O circuito de refresh da placa mãe está com problemas, isto pode ser causado por danos na placa mãe ou falhas nos módulos de memória RAM.

1 Bip longo e 2 bips curtos; 1 Bip longo e 3 bips curtos Falha no Vídeo – Problemas com o BIOS da placa de vídeo. Tente retirar a placa, passar borracha de vinil em seus contactos e recoloca-la, talvez em outro slot. Na maioria das vezes este problema é causado por mau contacto.

2 Bips curtos – Falha Geral: Não foi possível iniciar o computador. Este problema é causado por uma falha grave em algum componente, que o BIOS não foi capaz de identificar. Em geral o problema é na placa mãe ou nos módulos de memória.

2 Bips longos: Erro de paridade – Durante o POST, foi detectado um erro de paridade na memória RAM. Este problema pode ser tanto nos módulos de memória quanto nos próprios circuitos de paridade. Para determinar a causa do problema, basta fazer um teste com outros pentes de memória. Caso esteja utilizando pentes de memória sem o Bit de paridade você deve desactivar a opção “Parity Check” encontrada no Setup.

3 Bips longos – Falha nos primeiros 64 KB da memória RAM (Base 64k memory failure)> Foi detectado um problema grave nos primeiros 64 KB da memória RAM. Isto pode ser causado por um defeito nas memórias ou na própria placa mãe. Outra possibilidade é o problema estar sendo causado por um simples mal contacto. Experimente antes de mais nada retirar os pentes de memória, limpar seus contactos usando uma borracha de vinil (aquelas borrachas plásticas de escola) e recoloca-los com cuidado.

4 Bips Longos – Timer não operacional: O Timer 1 não está operacional ou não está conseguindo encontrar a memória RAM. O problema pode estar na placa mãe (mais provável) ou nos módulos de memória.

5 Bips – Erro no processador: O processador está danificado, ou mal encaixado. Verifique se o processador está bem encaixado,

6 Bips - Falha no Gate 20 (8042 - Gate A20 failure) – O gate 20 é um sinal gerado pelo chip 8042, responsável por colocar o processador em modo protegido. Neste caso, o problema poderia ser algum dano no processador ou mesmo problemas relacionados com o chip 8042 localizado na placa mãe.

7 Bips Processor exception (interrupt error) – O processador gerou uma interrupção de excepção. Significa que o processador está apresentando um comportamento errático. Isso acontece às vezes no caso de um overclock mal sucedido.

8 Bips: Erro na memória da placa de vídeo (display memory error) - Problemas com a placa de vídeo, que podem estar sendo causados também por mal contacto. Experimente, como no caso das memórias, retirar a placa de vídeo, passar borracha em seus contactos e recolocar cuidadosamente no slot. Caso não resolva, provavelmente a placa de vídeo está danificada.

9 Bips: Erro na memória ROM (ROM checksum error) - Problemas com a memória Flash, onde está gravado o BIOS. Isto pode ser causado por um dano físico no chip do BIOS, por um upgrade de BIOS mal sucedido ou mesmo pela acção de um vírus da linhagem do Chernobil.

10 Bips: Falha no CMOS shutdown register (CMOS shutdown register error) - O chamado de shutdown register enviado pelo CMOS apresentou erro. Este problema é causado por algum defeito no CMOS. Nesse caso será um problema físico do chip, não restando outra opção senão trocar a placa mãe.

11 Bips – Problemas com a memória cache (cache memory bad) Foi detectado um erro na memória cache. Geralmente quando isso acontece, o BIOS consegue inicializar o sistema normalmente, desabilitando a memória cache. Mas, claro, isso não é desejável, pois deteriora muito o desempenho do sistema. Uma coisa a ser tentada é entrar no Setup e aumentar os tempos de espera da memória cache. Muitas vezes com esse “refresco” conseguimos que ela volte a funcionar normalmente.