2. Un ciclo de
instrucción (también
llamado ciclo de fetch-
and-execute o ciclo
de fetch-decode-
execute en inglés) es el
período que tarda la
unidad central de proceso
(CPU) en ejecutar una
instrucción de lenguaje
máquina.
INICIO
Leer la
siguiente
instrucció
n
Ejecutar
la
instrucció
n
FIN
Ciclo de
lectura
Ciclo de
ejecución
3. Las etapas del ciclo de instrucción son:
IF (búsqueda)
ID (decodificación)
EX (ejecución en el operador multiciclo)
WB (escritura en el bus común de datos).
4. 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.
5. 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.
6. Llegado a este paso, el procesador ya sabe
de qué instrucción se trata y los parámetros
que necesita, luego simplemente la ejecuta
de la forma apropiada.
Al finalizar este paso finaliza una iteración
del ciclo de instrucción, volveremos ala
búsqueda de la siguiente instrucción y así
sucesivamente.
7. Llegado a este paso, el procesador ya sabe
de qué instrucción se trata y los parámetros
que necesita, luego simplemente la ejecuta
de la forma apropiada.
Al finalizar este paso finaliza una iteración
del ciclo de instrucción, volveremos ala
búsqueda de la siguiente instrucción y así
sucesivamente.
8. Este ciclo se puede
resumir en la figura.
Cuando están
involucrados más de un
operando cada uno de
ellos requiere un acceso.
Se debe realizar un
tratamiento especial
cuando hay
direccionamiento
9. Instrucciones utilizan los recursos distintos en
distintas etapas de la ejecución, entonces se
ejecutan múltiples instrucciones
simultáneamente siempre y cuando TODAS
se encuentren en distintas etapas de
ejecución.
¿Por qué a la segmentación se le llama
Pipelining?
Porque al igual que en una tubería, se aceptan
entradas nuevas en un extremo antes de que