Você está na página 1de 19

Implementação de Controle

•Emissão de Instrução

Perigo – sim – Desdobra – Emissão


Perigo – não - Emissão
Implementação de Controle

•Para que serve o bloqueio?


Implementação de Controle

•Redução da complexidade de
hardware.
- nunca suspende instrução a menos que
o processador inteiro desdobre.
Implementação de Controle

•MIPS de Inteiro
os perigos de dados podem ser
verificados na fase de ID.
Como lidar com desvios?
É uma técnica de hardware que permite
que a CPU realize a busca de uma ou
mais instruções além da próxima a ser
executada. Estas instruções são
colocadas em uma fila de memória (dentro
da CPU) onde aguardam o momento de
serem executadas.
O que torna o pipiline difícil de
implementar?
O que torna o pipiline difícil de
implementar

•Exceções
- Interrupção
- Defeitos
- Exceções
Exceções
• Uma das partes mais difíceis do controle é implementar
exceções e interrupções – eventos diferentes de
desvios ou jumps que mudam o fluxo normal de
execução das instruções.

• Uma exceção é um evento inesperado de dentro do


processador, como, por exemplo, o overflow aritmético.

• Uma interrupção é um evento que também causa uma


mudança inesperada no fluxo de controle mas vem de
fora do processador.
O que torna o pipiline difícil de
implementar(requisitos)
•Síncronos X assíncronoa
- Síncronos:
Eventos mesmo lugar,dados e alocação de memória
- Assíncronos:
Dispositivos externos a CPU e Memória.
O que torna o pipiline difícil de
implementar
•Solicitado pelo Usuário X Forçado
- Solicitado:
Previsível – pos instrução
- Forçado:
Imprevisível – pos e dentro instrução – difícil de lidar
O que torna o pipiline difícil de
implementar
•Mascaravel pelo usuário X ñ Mascaravel
- Mascaravel:
Quando um evento pode ser desativado pelo usuário
O que torna o pipiline difícil de
implementar

•Dentro X Entre instrução

- Dentro – síncronos – Difícil -


Iniciada
O que torna o pipiline difícil de
implementar

•Retomar X Encerrar
- Solicitado – previsível – pos
instrução
- Forçado – imprevisível – pos
dentro - Difícil
O que torna o pipiline difícil de
implementar
•Mascaravel pelo usuário X ñ Mascaravel
- Mascaravel:
Quando um evento pode ser desativado pelo usuário
Como tratar exceções?
Como tratar exceções
• Ação básica que a máquina precisa
realizar quando ocorre uma exceção é:
- Salvar o endereço da instrução
problemática no contador de programa
- Para exceções (EPC – Exception
Program Counter);
- Transferir o controle para o sistema
operacional em alguns endereços
especificados.
Como tratar exceções
• O sistema operacional, então, pode
tomar a ação apropriada:
- Ação predefinida em resposta a um
overflow;
- Fornecer algum serviço ao programa do
usuário;
- Interromper a execução do programa e
retornar um erro.
Como tratar exceções
• Depois de realizar qualquer ação
necessária devido à exceção, o
sistema operacional pode terminar o
programa ou continuar sua execução
usando o EPC para determinar onde
reiniciar a execução do programa.

Você também pode gostar