Por Rodriguez Guevara, Imer Cajamarca, octubre 10, 2021
1. La unidad de control y la memoria
La unidad de control busca las instrucciones dentro de la memoria principal o memoria central, decodificarlas, es decir interpretarlas y ejecutarlas empleando la unidad de procesos, podemos decir que la unidad de control se apoya de la memoria principal, donde tenemos el programa. Obtiene en la memoria las operaciones de los programas y las lleva al registro del procesador. En función de lo que incluya este registro, la unidad de control crea una señal que vigila la realización de estas operaciones. Según el tipo de operación que ingrese a la unidad de control, podría cambiar la cantidad y el orden de los pasos secuenciales generados para seleccionar y configurar las partes de la CPU que se utilizarán para lograr el objetivo de la operación, ya sea mover, modificar o almacenar datos. Este proceso de decodificación de operaciones se vuelve a realizar al incrementarse el contador a la siguiente dirección guardada del programa. Desde esa dirección se ingresa la nueva operación a la unidad de control, y así sucesivamente hasta finalizar el programa.
2. La unidad de control y el ALU del microprocesador
La unidad de control es el componente del procesador que dirige y coordina la mayoría de las operaciones en la computadora. Los tipos de componentes internos que la unidad de control dirige incluyen la unidad lógica y aritmética, los registros, y los buses. La unidad de control emite señales de control (ordenes) externas a la CPU para producir el intercambio de datos con la memoria y los módulos de E/S. También emite señales de control internas para transferir datos entre registros, hacer que la ALU ejecute una función concreta y regular otras operaciones internas, y que posteriormente son transmitidas al procesador central. La unidad de control es la parte de la CPU que realmente hace que las cosas ocurran. La ALU utiliza registros para conservar los datos que se están procesando, como si se usara un platón de mezcla para conservar los ingredientes antes de mezclarlos para hornear pan. En resumen, se podría decir que la unidad de control del microprocesador obtiene cada instrucción, al igual que usted tomaría cada ingrediente de la alacena. La computadora carga los datos en los registros de la ALU, tal como usted agregaría todos los ingredientes al plato de mezcla. Por último, la unidad de control le da la instrucción de iniciar el procesamiento; usted emplearía el interruptor de la batidora eléctrica para comenzar a mezclar los ingredientes para el pan. 3. La unidad de control y la Entrada/Salida Consideremos en primer lugar el registro de instrucción. La unidad de control hace uso del código de operación y realiza acciones diferentes (emite una combinación diferente de señales de control) para cada instrucción, es responsabilidad de la unidad de control informar a los dispositivos de entrada y salida, a la memoria principal y a la unidad lógico-aritmética de la computadora cómo replicar a las operaciones que son emitidas al procesador. Recibe las instrucciones o comandos externos a los que convierte en una secuencia de señales de control, para interpretar las instrucciones y controlar la ejecución secuencial de las instrucciones. Un cambio de cualquiera de las señales mencionadas incita que cambie el estado de la unidad de control. Por ejemplo, cuando se mueve el mouse, Como resultado, algunas líneas que salen del decodificador de instrucciones adquieren valores en la señal. Estas líneas se encuentran acopladas al dispositivo generador de señales de control para las diferentes unidades de la computadora. Repitiendo la organización de estas fases es que se estructura en la unidad de control el ordenamiento apropiado de estados internos. Cuando llega una nueva instrucción a la unidad de control, las unidades integradas se encuentran en el estado inicial para recuperar la nueva instrucción.
4. Las interrupciones en la unidad de control
Interrupciones de Hardware: provoca que el procesador guarde su estado y cambie totalmente de contexto para poder atender la solicitud. Es de tipo asíncrono (no se sabe cuándo se ocurrirá), por ejemplo no sabemos cuándo se va a mover el mouse, tienen un poco de prioridad porque vienen a través de hardware, aunque se pueden deshabilitar, el procesador tiene interrupt request, que cuando se genera un evento en un dispositivo, el procesador atiende a través de IQ, a partir de esa petición de interrupción, no se puede que dos dispositivos diferentes se comuniquen al procesador a través de la misma IQ, cada uno de nuestros dispositivos cuando quiera hacer algo, tiene que avisar al procesador a través de IRQ. Interrupciones por software: es muy similar a la de hardware, pero con la diferencia que será síncrona (se prevé en qué momento ocurrirá), por ejemplo, la actualización de gráficos de pantalla ya que lo regula el sistema en pantalla, una interrupción de tiempo, por ejemplo, si programamos que cada segundo vamos actualizar el reloj del sistema, porque sabemos que cada segundo va haber interrupciones para que haga eso. En resumen, cuando nosotros queremos hacer algo le vamos avisar a la unidad de control, nuestra unidad de control va a decidir cuando detener lo que esta haciendo y guardar los registros de ese momento, cambiar de programa, y cuando termine volver a donde estaba.