Está en la página 1de 7
UNIDAD DE CONTROL CICLOS DEL PROCESADOR {Qué es un ciclo de busqueda? Para qué sirve estudiar los ciclos de instruceién de una CPU? Para comprender el funcionamiento de la ejecucién de instrucciones del procesador Qué es un ciclo de instruccién? Cielo de instruecion es el procesamiento requerido para la instruccién. En este Ciclo, se encuentran los dos pasos denominados Ciclo de lectura (fetch) y Ciclo de ejecucién (execution), ¢ Qué etapas constituyen un ciclo basico de instruccién? Las etapas del ciclo de instruccién para las instrucciones multiciclo son: IE (biisqueda). ID (decodificacién), Issue (lanzamiento a ejecucién, aplicando Tomasulo), EX (¢jecucion en el operador multiciclo) y WB (escritura en el bus comtin de datos). Las IAS operan repitiendo un ciclo de instruccién, que a su vez consiste en 2 subciclos. Cielo de biisqueda y ciclo de ejecucion. éQué es un ciclo de busqueda? La accion de leer una instruccién en la CPU y prepararla para su ejecucin se denomina ciclo de biisqueda. Para completar una instruccién a CPU decodifica el opcode, genera las seitales de control que se necesitan para introducir los operandos requeridos y controla la ejecucion de Ia instruccién. Durante el ciclo de bitsqueda, el opcode de 1a siguiente instruceién es cargado en el IR(Registro de Instruccién) y la porcidn de direccién es cargada en el MAR(Registro de Direccién de Memoria): esta instruccién puede ser tomada del IBR(Registro de Buffer de Instruceién), o puede ser obtenido de la memoria cargando una palabra en el MBR(Registro de Buffer de Memoria). y después al IBR. IR, y MAR Qué registros entran en juego durante el ciclo de bitsqueda? Contador del programa (PC). Registro de direcciones de la memoria (MAR). Rexistro de datos. Rexistro de instrucciones.( Registro de buffer de memoria(MBR) Palabra de estado de programa. Wo kee 6. Acumulador (éQué acciones pueden llevarse a cabo cuando la CPU interpreta instrucciones? El procesador Jee una instruccién de 1a memoria, al comienzo de cada Ciclo de instruccién. Se cuenta con un contador de programas (PC), que lleva la cuenta de cual es la préxima instruccién a leer. Luego el procesador incrementara el PC. de manera tal que la siguiente instruceién a leer sera la que se encuentra en la direccién inmediatamente superior de la memoria. La instruccién leida es cargada en el registro de instruceién (IR), que es un registro del procesador. El procesador interpreta la instruccién, la cual esta en forma de cédigo binario, que especifica la accién que el procesador llevar a cabo, y realizaré la acci6n requerida, Las aceiones que se realizan para la lectura y ejecucidn de instrucciones se pueden clasificar en las siguientes categorias: * Procesador ~ Memoria: los datos se transfieren del procesador a la memoria 0 viceversa # Procesador ~ E/S: los datos se transfieren desde o hacia un dispositive perifético. Se realiza la transferencia entre el procesador yun médnlo de entrada-salida. © Tratamiento de datos: el procesador puede realizar alguna operacién aritmética 0 légica sobre los datos. © Control: la secuencia de ejecucién puede ser alterada sila instruccisn lo especifica La ejecucién de una instruccién puede ineluir una combinacién de las acciones antes meneionadas. Describir el ciclo basico de instruccién mediante diagramas de estado. — Cm) siguiente | Ciclo de busqueda Ciclo de ejecucion Indeccin Inaecion (arsoen se ‘perando (copacin se operando Oporandoe iis Recutadoe mutes ‘tela oe reccn de instnecien Caleta do siecoitn operando Cale secon operanéo ‘Operacion te doe egresa pot Sting imerpein © sactor de dato Inerucsn compl apa siguiente nstuccin Diagiama de Fstad de Ciclo de Insuccton CICLOS DE INTERRUPCION 6 Qué es una interrupeién? La interrupcion es basicamente un suceso que altera la secuencia de ejecucién de las instruceiones. ¢Para qué sirven las interrupeiones? Existen varios tipos de intermupciones de los cuales los més comunes son los siguientes: «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. * De reloj: son producidas por un reloj intemo del procesador. Para que de esa forma se realicen finciones con una ciesta regularidad. De Entrada / Salida: son generadas por un controlador de E/S para indicar Ia finalizacion de una coperacién; oe cambio de estado de un dispositivo o canal; o tambien alguna condicién de error. «Por fallo del Hardware o de verificacién de miquina: son causadas por el mal funcionamiento del equipo, cortes de energia, ete Con el uso de las intermupeiones el procesador se puede utilizar de una manera mds efieaz, Qué clases de interrupciones existen? ‘Atendiendo a su origen, en el PC existen tres tipos de interrupciones: © Interrupciones hardware Las interrupciones hardware ocurren cuando un dispositive necesita atencién del procesador y genera una seilal eléctrica en la linea IRQ que tiene asignada, Esta seflal es recogida y procesada por el controlador de excepciones PIC antes de ser enviada al procesador, lo que puede realizarse de dos formas, segtin el tipo de interupeién sea enmascarable o no enmascarable. © Interrupciones software Los procesadores Intel de la gama x86 y compatibles, disponen de una instruccién INT que permite generar por software cualquiera de los 256 tipos de interrupcién anterionmente desctitos. El proceso seguido es exactamente el mismo que si se recibe una interrupeién hardware en la patilla INTR, salvo que en este caso se conoce el tipo de interrupeién, y no se requiere ningtin ciclo INTA. Por ejemplo, en lenguaje ensamblador, la instruccion INT 21 invoca la interrupeién 33d (21h), que en MS-DOS es la llamada a los servicios del Sistema. Este tipo de interrupeiones son de prioridad mis alta que las de hardware, de forma que si se reeibe ‘una inferrupeién hardware mientras que se ejecuta una software, esta tiltima tiene prioridad, © Excepciones del procesador Durante el funcionamiento del procesador pueden ocurrir cizcunstancias excepeionales; es usual citar como ejemplo el caso de una division por cero. En estos casos, el procesador genera una excepeida, que es tratada como si firese una intermpeién software, con la diferencia de que el uiimero de interrupcion asociado depende del tipo de excepeion, ¢Cémo afectan las interrupeiones al ciclo de instruccién? Utilizando intermupciones el procesador puede ejecuitar instrucciones mientras una operacién de E/S esti en proceso, Signiendo esta idea se concluye que la operacin de E/S y un programa usuario son ejecutados concurrentemente. Desde la postura del programa de usuario, una interrupeién no es més que la alteracién de la secuencia nommal de ejecucién. Cuando el tratamiento de la interrupeién termina, la ejecucién continta. ¢Cémo maneja la CPU el ciclo con interrupciones? ara tratar a las interrupeiones, se agrega un ciclo de interrupeién al ciclo de instruceién. En el cielo de interrupeién, el procesador verifica si ha ocurrido alguna interrupei6n, indicado por la presencia de una sefial de interrupcién. Si no hay interrupciones pendientes, el procesador coutintia con el ciclo de lectura y trae la proxima instruccién del programa en curso. Si hay una interrupeién pendiente, el procesador suspende Ja ejecucién del programa en curso y ejecuta una rutina de tratamiento de la inferrupeién Estado basico de instruceién con interrupeiones: HAROWARE SOFTWARE Tlemirdade dd digpnttow ate sons Sethe generous Suva dees dole ine intra ead dl + noone El procenda filial t ject isan nals Thteapan dl prvesn Tipeomda ond Reanas foistamacian de svete defn intern indo dd roses ¥ ¥ Tiprecomderianrale FawyelPC ealen See 4 Elpocenr cage clone vbr] PC doped Se Ia wien, Lo | CICLOS DIRECTOS ¢Cudndo aparece un ciclo indirecto? Se presenta cuando se da la captacién de direcciones indirectas y es un subciclo de una instruccién més. ‘é Qué cambios aparecen en el ciclo de instruccién ante la presencia de un ciclo indirecto? Si hay direccionamiento indirecto, se leva a cabo un ciclo indirecto. Los N bits més ala derecha de MBR se transfieren a MAR. © La unidad de control solicita una lectura de memoria, © El resultado (la direecién del operando) se leva a MBR. eComo se explica un ciclo de instruccién con la presencia de ciclos indirectos mediante un diagrama de estados? {interrupetin| Flujo de datos en términos generales. ‘MBR = Registro intermedio de memoria MAR = Registro de direceién de memoria IR = Registro de instruceién PC = Contador de programa Ciclo de captacion: crv Pe wae — = k4 mes E> = Buse Bude Bus de dvecclones date coat Durante el ciclo de captacion © busqueda, una instruceién se lee de memoria, el PC contiene la direccién de la siguiente instruccién a captar, esta direceién se mueve al MAR y puesta en el bus de direcciones, la unidad de control pide leer 1a memoria el resultado se pone en el bus de datos y copiado en el MBR para después ser movido al IR, mientras tanto. el PC se incrementa en 1, preparacién para la siguiente captacion Ciclo indirecto: Cuando el ciclo de captacién se termina, la unidad de control examina el contenido del IR para determinar si contiene un indicador de operando usando direccionamiento directo, Si es asi, se realiza el ciclo indirecto. donde los N bits més a la derecha del MBR, que contienen la referencia a direccién, se transfieren al MAR, entonces la unidad de control pide lectura de memoria, para obtener la ere ey ‘tims conde direccién deseada del operando dentro del MBR. Los ciclos de captacién ¢ indirecto son muy predecibles, el ciclo de ejecucion varia mucho, dependiendo de que instrucciones de maquina se encuentren en el IR, este ciclo puede relacionar informacion de transfereneia entre registios, leer o escribir desde memoria 0 YO, vio la Hamada a la ALU. Cicto de interrupeién: En el ciclo de interrupcién, el actual contenido del PC debe ser guardado para que el CPU pueda volver a actividad normal después de la intermupeién, Asi que, el contenido del PC es transferido al MBR para escribitse en memoria, la locacién especial reservada para esto es cargada en el MAR desde la unidad de control, puede, por ecile Mace cde ejemplo, ser un apuntador de pila, el PC se carga con Ia direccion de la rutina de interrupcién, como resultado, el siguiente ciclo de instruccién empes zara captando la instruceién apropiada. FUENTES: © httyy//akimpech.izt.uam.mx/Web_jr/ami14.him, fe hitpy//exa.unne.edu_ar/depar/areas/informatica/SistemasOperativos/MonogSO/INTSI02.htm # Diapositivas de apoyo del Curso

También podría gustarte