quinta-feira, 20 de outubro de 2011

CPU - Instruções

 Definição de Instruções de Máquina
A operação de uma UCP é determinada pelas instruções que ela executa,
conhecidas como instruções de máquina

Cada instrução deve conter toda a informação necessária para permitir sua
execução pela UCP. Essa informação necessária compreende:

• Código de operação: especifica a operação a ser realizada
• Operando fonte*: operandos que constituem dados de entrada para a
operação
• Operando de destino*: resultado que pode ser produzido pela operação
• Endereço da próxima instrução: local onde deve ser buscada a instrução
seguinte (em alguns casos), após o término da corrente

Definição de CISC e RISC

Argumentação CISC

A programação em assembly e compiladores pouco sofisticados
justificavam que as instruções estivessem perto das HLL
Acreditava-se que instruções complexas executavam mais
rapidamente uma operação do que sequências de instruções
simples
Instruções complexas permitiam que o programa fosse composto por
menos instruções, poupando memória
Os processadores possuíam poucos registos, exigindo o recurso
constante a operandos em memória – arquitecturas register-memory ou
memory-memory.

Argumentação RISC


1.A utilização das instruções complexas e modos de endereçamento
sofisticados é pouco frequente, pois os compiladores têm que
encontrar casos que se adaptem exactamente à instrução.

2. Suportar instruções complexas implica uma unidade de controlo
mais sofisticada, com um período de relógio maior. Isto aumenta
também o tempo de execução das instruções mais simples, cuja
utilização é mais frequente.

Conclusão: reduzir o conjunto de instruções e modos de
endereçamento àqueles estritamente necessários. Operações
complexas são conseguidas por software, à custa de sequências de
instruções simples. A simplificação da unidade de controlo permite que
estas instruções executem mais rapidamente.


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.


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



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

• Busca (leitura)
     – Lê a próxima instrução da memória para a UCP;
• Decodifiação
     – Interpreta o código de operação e seus operandos (se existir).
• Execução
     – Efetua a operação indicada.
• Interrupção
     – Se as interrupções estão habilitadas e ocorreu uma interrupção,
       salva o estado do processo atual e processa a interrupção.
• Exemplo de execução de um ciclo de instrução:
   – Iniciar
   – RI←(CI) Busca a instrução, cujo endereço está no CI
   – (CI) ← (CI)+1 Atualiza o CI para a próxima instrução;
   – Interpretar o C.Op.
   – Buscar Op. (Se houver)
   – Executar a instrução
   – Retornar




0 comentários:

Enviar um comentário