CICLOS DE INSTRUCCIÓN Misael Barrera Arias
Unidad de control • La misión fundamental de esta unidad se centra en recoger las instrucciones que componen un programa, interpretarlas y controlar su ejecución. • Dado que las instrucciones se encuentran almacenadas en la unidad de memoria, deberá encargarse en primer lugar de recibirlas en el orden establecido. • En segundo lugar, deberá identificar de que instrucción se trata en cada caso. Por ultimo, tendrá que generar la secuencia adecuada de ordenes para el resto de lementos que constituyen el computador, de manera que cada instrucción se ejecute correctamente.
Ciclo de instrucción Fetch (Buscar o traer) • Se conoce como ciclo de instrucción al periodo que tarda la unidad central de proceso en ejecutar una instrucción. • Esta compuesto por una serie de acciones en secuencia que debe realizar el CPU con el fin de ejecutar cada instrucción en un programa. Cada instrucción de la secuencia de instrucciones del CPU puede requerir diferentes números de ciclos de instrucciones para ejecutarse.
Ciclo de instrucción • Un ciclo de instrucción puede estar conformado por uno o mas ciclos de maquina. • Para dar un ejemplo cualquier sistema de proceso de datos basado en microcontroladores como un reproductor MP3 realice una tarea, primero debe buscar cada instrucción en la memoria principal y luego ejecutarla.
Etapas del ciclo de instrucción • IF (búsqueda) • ID (decodificación) • Buscar los operandos • Ejecutar la instrucción
• WB (escritura en el bus común de datos)
Búsqueda • Se vuelca el valor del contador de programa sobre el bus de direcciones. Entonces la CPU pasa la instrucción de la memoria
principal a través del bus de datos, al Registro de Datos de Memoria(MDR). A continuación el valor del MDR es colocado en el Registro de Instrucción Actual (CIR), un circuito que guarda la
instrucción temporalmente de manera que pueda ser decodificada y ejecutada.
Decodificación de la instrucción • El decodificador de instrucción interpreta e implementa la instrucción. El procesador decodifica éste para saber de qué instrucción se trata y obtiene los parámetros de la memoria (si los tuviera). • El registro de instrucción (IR) mantiene la instrucción en curso mientras el contador de programa (PC, program counter) guarda la dirección de memoria de la siguiente instrucción a ser ejecutada.
Buscar los operandos
• Se accede al banco de registros para buscar los operandos que sean necesarios.
Ejecutar la instrucción • A partir del registro de instrucción, los datos que forman la instrucción son decodificados por la unidad de control, donde la
información es interpretada como una secuencia de señales de control que son enviadas a las unidades funcionales de la CPU para que realicen la operación requerida.
Almacenar los resultados • El resultado que es obtenido por la operación se almacena en la memoria principal o es enviado a un dispositivo de salida
dependiendo de la instrucción.
Buscar la siguiente instrucción • Dependiendo de los resultados de la operación, el contador de programa se incrementa para apuntar a la siguiente instrucción o
se actualiza con una dirección diferente donde la próxima instrucción será recogida.
Ciclo de instrucción cont (Interrupción) • En direccionamiento indirecto se alternan la búsqueda y la ejecución de instrucciones
• Después de ejecutar una instrucción de este tipo se puede producir una interrupción antes de buscar la siguiente instrucción.
Ciclo de instrucción cont (Interrupción) • Búsqueda.- Traslada y busca una instrucción a memoria. • Ejecución.- Decodifica o traduce la instrucción y lleva a cabo la operación. • Interrupción.- El procesador recibe un llamado de atención, salva el estado actual y atiende la llamada.
Referencias • https://www.youtube.com/watch?v=QRyxgXAm5fc • https://es.slideshare.net/ERICA2c3/el-ciclo-de-instruccion27842618
• https://es.slideshare.net/EduardoSuarez19/ciclo-deinstrucciones-36928324