sexta-feira, 12 de outubro de 2012

Arquiteturas CISC e RISC


Definição de CISC e RISC



CISC


CISC (Computador com um Conjunto Complexo de Instruções): é uma linha de arquitectura de processadores capaz de executar centenas de instruções complexas diferentes sendo, assim, extremamente versátil.



RISC


O processador RISC baseia-se na premissa de que será menos eficiente executar uma instrução complexa do que executar o conjunto de instruções simples equivalente. Assim sendo eles têm como objectivo simplificar o conjunto de instruções em diversas dimensões até maximizar esta premissa. 

quinta-feira, 11 de outubro de 2012

CPU - Instruções




Definição de instruções de máquina

Instruções de máquina são operações que um processador suporta e fornece ao programador, com a finalidade de facilitar o acesso ao componente. Cada instrução deve conter informação necessária para permitir a sua execução pela CPU. Essa informação compreende:

  • Código de operação: especifica a operação a ser realizada:
  • Operando fonte: constituem dados de entrada para a operação;
  • Operando de destino: resultado produzido pela operação;
  • Endereço da próxima instrução: local onde deve ser procurada a próxima instrução, após o término da corrente.

Formato das instruções

As instruções são divididas em duas de acordo com o conjunto de bits:

  1. Indica o que é a instrução e a sua execução, sendo constituída de um só campo;
  2. Refere-se aos dados que serão manipulados na operação, podendo ser constituída por mais um campo.

Assim sendo cada uma das instruções é composta pelos seguintes campos:

  • Um campo denominado código de operação – cujo valor binário é a identificação da operação, que servirá de dado de entrada para os descodificadores da área de controlo.
  • O restante grupo de bits, intitulado de campo de operando – cujo valor binário indica a localização do dado que será manipulado durante a sua execução.

 

Tamanho das Instruções

O conjunto de instruções de um processador pode ser feito de duas maneiras:

  • Instruções com C.Op. de tamanho fixo;
  • Instruções com C.Op. de tamanho variável.

As instruções de tamanho fixo têm todas a mesma quantidade de bits. A sua implementação e manipulação durante a execução de um programa são facilitadas, assim sendo o tamanho do C.Op. e da próxima instrução tende a aumentar, influenciando assim o tamanho ocupado pelo programa na MP.

As instruções de tamanho variável têm 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. Este tipo de implementação permite maior versatilidade entre quantidades de bits do código de operação e a dos campos operandos, criando um conjunto de instruções com maior número de instruções, sem aumentar demasiado o tamanho total das instruções.


Tipos de instruções

O conjunto de instruções utilizados deve ser de uma linguagem de alto nível( Basic, Pascal, Fortran, C, etc.), assim podemos classificar as instruções de máquina nos seguintes tipos:

  • 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;
  • Controlo: instruções de teste e desvio.

  • Instruções aritméticas são aquelas que fornecem capacidade computacional para processamento de dados numéricos.
  • Instruções lógicas são aquelas que operam sobre bits de uma palavra, na condição de bits e não de números, oferecendo, portanto a capacidade de processar qualquer outro tipo de dado que se deseje empregar, sem estabelecimento de relações matemáticas ou algébricas entre esses dados.

  • Instruções de memória são aquelas utilizadas para mover os dados entre a memória e os registradores da CPU, uma vez que operações aritméticas e lógicas são executadas sobre dados armazenados nesses registradores.

  • Instruções de E/S são necessárias para transferir programas e dados para memória e para transferir resultados de processamentos computacionais de volta.

  • Instruções de teste são aquelas utilizadas para testar o valor de uma palavra de dados ou do estado de uma etapa de processamento computacional.

  • Instruções de desvio são usadas para desviar a execução do programa para uma nova instrução, muitas vezes em função do resultado de um teste.

Ciclo de Instrução


segunda-feira, 8 de outubro de 2012

CPU - Central Processing Unit


   
Definição de CPU
 
    A CPU é a parte de um sistema computacional que executa as instruções de um programa de computador, executando a aritmética básica, lógica, e as entradas e saídas de dados. Tem um papel parecido ao cérebro no computador. O seu desenho, forma e implementação mudaram desde os primeiros exemplos, porém a sua função permanece a mesma.



  • Unidade de Controlo
  • Descodificador de Instrução
  • Contador de Instrução
  • Relógio
  • Registador de Endereços da Memória
  • Registador de Dados de Memória







   

ALU e a sua função na CPU

    O ALU (Arithmetic-Logic Unit) é geralmente uma subsecção da CPU. Enquanto a CPU é o cérebro do computador, o ALU é uma área de processamento otimizado para executar cálculos matemáticos e comparações lógicas. O processador envia códigos de operação e operandos para a ULA, que executa a operação solicitada nos dados fornecidos e reenvia os resultados.





UC e a sua função na CPU


     A UC é a unidade que armazena a posição de memória que contém a instrução que o computador executa nesse momento. Ela informe a ULA qual a operação a executar, procurando a informação (da memória) que a ULA precisa para prosseguir. Depois, transfere o resultado de volta para o local apropriado da memória. A seguir a unidade de controlo vai para a próxima instrução. A unidade de controlo regista os bits de condição, base de tempo fornecida pelo relógio e sinais de controlo gerados por fontes externas.



Relógio


    O relógio determina a quantidade de vezes que um pulso básico se repete num segundo que define a unidade média do relógio denominada frequência, que também serve para definir a velocidade da CPU. Sincroniza ou permite que duas ou mais acções ocorram no mesmo instante de tempo, ritma as acções realizadas num determinado positivo, ou seja, controla a velocidade com que ocorre a acção.