CICLO DE EJECUCION DE UNA INSTRUCCION

Anuncio
CICLO DE EJECUCION DE UNA INSTRUCCION
Los pasos a seguir para el procesamiento de las instrucciones son los siguientes:
1. cada instrucción es leída ( una a la vez), desde la memoria, por el procesador y,
2. cada instrucción es ejecutada por el procesador. La repetición de la lectura y
ejecución ( pasos 1 y 2 respectivamente), conforman la “ejecución de un programa”.
Dicha ejecución puede detenerse si: la máquina se apaga, ocurre un error que no puede
ser recuperado, o si, se encuentra una instrucción en el programa que detenga la
computadora.
Ciclo de instrucción: es el procesamiento requerido para la instrucción. En este Ciclo, se
encuentran los dos pasos citados anteriormente, denominados Ciclo de lectura (feth) y
Ciclo de ejecución.
Lectura y ejecución de instrucciones
El procesador lee una instrucción de la memoria, al comienzo de cada Ciclo de
instrucción. Se cuenta con un contador de programas ( PC program counter ), que lleva
la cuenta de cual es la próxima instrucción a leer. Luego de leer cada instrucción el
procesador incrementara el PC, de manera tal que la siguiente instrucción a leer será; la
que se encuentra en la dirección inmediatamente superior de la memoria. La instrucción
leída es cargada en el registro de instrucción ( IR instuction register ), que es un registro
del procesador. El procesador interpreta la instrucción, la cual está en forma de código
binario, que especifica la acción que el procesador llevará a cabo, y realizará la acción
requerida.
Las acciones que se realizan para la lectura y ejecución de instrucciones se pueden
clasificar en las siguientes categorías:
· Procesador-memoria: los datos se transfieren del procesador a la memoria o viceversa.
· Procesador E/S: los datos se transfieren desde o hacia un dispositivo periférico. Se
realiza la transferencia entre el procesador y un módulo de entrada-salida.
· Tratamiento de datos: el procesador puede realizar alguna operación aritmética o
lógica sobre los datos.
· Control: la secuencia de ejecución puede ser alterada si la instrucción lo especifica.
La ejecución de una instrucción puede incluir una combinación de las acciones antes
mencionadas.
Funciones de E/S
Los módulos de E/S, por ejemplo un controlador de disco, peden intercambiar datos
directamente con el procesador y el este puede iniciar una escritura o lectura en la
memoria, para ello debe indicar la dirección de una ubicación especifica.
El procesador puede leer datos de un módulo de E/S o escribir en él, para ello indica a
un dispositivo especifico que esta controlado por un determinado módulo de E/S.
Para relevar al procesador de la tarea de E/S, es conveniente que los intercambios de
E/S se produzcan directamente con la memoria. De esta manera el procesador le da a un
módulo de E/S autoridad para leer o escribir en la memoria de modo que la
transferencia de E/S se realiza sin obstruir al procesador.
Se releva al procesador durante la transferencia de la responsabilidad de intercambio, ya
que el modulo de E/S emite ordenes de lectura o escritura en la memoria. La operación
realizada se conoce como DMA (direct memory access) o acceso directo a memoria.
INTERRUPCIONES
La interrupción es básicamente un suceso que altera la secuencia de ejecución de las
instrucciones.
Existen varios tipos de interrupciones de los cuales los más comunes son los siguientes:
1) De programa o de verificación de programa: son ocasionadas por condiciones que se
producen como resultado de la ejecución de una instrucción. Ejemplo: - la división por
cero - el intento de ejecutar una instrucción privilegiada.
2) De reloj: son producidas por un reloj interno del procesador. Para que de esa forma se
realicen funciones con una cierta regularidad.
3) De Entrada / Salida: son generadas por un controlador de E/S para indicar la
finalización de una operación; o e cambio de estado de un dispositivo o canal; o también
alguna condición de error.
4) Por fallo del Hardware o de verificación de máquina: son causadas por el mal
funcionamiento del equipo, cortes de energía, etc. Con el uso de las interrupciones el
procesador se puede utilizar de una manera más eficaz.
Las interrupciones y el ciclo de instrucción
Utilizando interrupciones el procesador puede ejecutar instrucciones mientras una
operación de E/S está en proceso. Siguiendo esta idea se concluye que la operación de
E/S y un programa usuario son ejecutados concurrentemente.
Desde la postura del programa de usuario, una interrupción no es más que la alteración
de la secuencia normal de ejecución. Cuando el tratamiento de la interrupción termina,
la ejecución continua. Para tratar a las interrupciones, se agrega un ciclo de interrupción
al ciclo de instrucción.
En el ciclo de interrupción, el procesador verifica si ha ocurrido alguna interrupción,
indicado por la presencia de una señal de interrupción. Si no hay interrupciones
pendientes, el procesador continúa con el ciclo de lectura y trae la próxima instrucción
del programa en curso. Si hay una interrupción pendiente, el procesador suspende la
ejecución del programa en curso y ejecuta una rutina de tratamiento de la interrupción.
RODRIGUEZ LOPEZ J. JESUS | | | | | v v v v v
-CICLO DE INSTRUCCIONUn ciclo de instrucción (tambien llamado ciclo de traer y ejecutar) es el período de
tiempo durante el cual un ordenador lee y procesa una instrucción de lenguaje máquina
de su memoria o la secuencia de acciones que la unidad central (CPU) funciona para
ejecutar cada instrucción de código de máquina en un programa.
El nombre el ciclo traer-y-ejecutar comúnmente es usado.La instrucción debe ser traída
de la memoria principal, y luego ejecutado por la CPU.Esto es fundamentalmente como
un ordenador funciona, con su lectura de CPU y ejecución de una serie de instrucciones
escritas en su lenguaje máquina.De esto surgen todas las funciones de un ordenador
familiar a partir del final del usuario.
Ciclo de Instruccion:
La CPU de cada ordenador puede tener ciclos diferentes basados en juegos de
instrucción diferentes.
Traer la instruccion desde la memoria principal:
La CPU presenta el valor de la PC sobre el bus de dirección.La CPU entonces trae la
instrucción de la memoria principal vía el bus de datos en el Registro de Datos de
Memoria (MDR).El valor del MDR entonces es colocado en el Registro de Instrucción
Actual un circuito que sostiene la instrucción de modo que pueda ser descifrado y
ejecutado.
Decodificar la instrucion:
El decodificador de instrucción interpreta y pone en práctica la instrucción.
Registros que son críticos al ciclo ejecutar traída:
El registro de instrucción (IR) - mantiene la instrucción actual. La PC - sostiene la
dirección en la memoria de la siguiente instrucción a ser ejecutada.
Traer archivos desde la memoria principal:
Lea la dirección eficaz de la memoria principal si la instrucción tiene una dirección
indirecta. Traer requiere datos de la memoria principal para ser procesada y colocado en
registros.
EJECUTAR LA INSTRUCCION:
Del registro de instrucción, los datos que forman la instrucción son descifrados por la
unidad de control.Esto entonces pasa la información descifrada como una secuencia de
señales de control a las unidades de función relevantes de la CPU para realizar las
acciones requeridas por la instrucción como la lectura de valores de registros,pasandolos
a la unidad Aritmética lógica (ALU) para añadirlos juntos y escribiendo el resultado de
vuelta al registro.Una señal de condición es enviada de regreso a la unidad de control
por ALU si está implicado.
Almacenar Resultados:
El resultado generado por la operación es almacenado en la memoria principal, o
enviado a un dispositivo de salida. Basado en la regeneración de condición del ALU, la
PC es incrementada para dirigir la siguiente instrucción o para actualizar a diferentes
direcciones de donde sera traida la siguiente intruccion. El ciclo entonces es repetido.
-CICLO DE EJECUCIONLos pasos 3 y 4 dle ciclo de intruccion son parte del ciclo de ejecucion. Esos pasos
cambiaran con cada instruccion.
El primer paso del ciclo de ejecucion es proceso de memoria. La informacion es
tranferida entre el CPU y el modulo I/O. Después es el Proceso de datos usa
operaciones matemáticas así como operaciones lógicas en la referencia a
datos.Alteraciones centrales son el siguiente paso, son una secuencia de operaciones,
por ejemplo un salto la operación. El último paso es una operación combinada de todos
los otros pasos.
Descargar