Unidad de control (informática): componentes, funciones
La unidad de control es un circuito digital que gobierna las operaciones y maneja todas las señales de control dentro del procesador de una computadora. Permite que la unidad lógica, la memoria y los periféricos de entrada y salida sepan cómo replicar a las órdenes recibidas de un programa. Por tanto, encamina todo el flujo de entrada y salida, busca el código de las operaciones de los programas y dirige otras unidades enviando señales de temporización y de control.
Una unidad de control actúa al admitir los datos de entrada, que transforma en señales de control y que posteriormente son transmitidas al procesador central. El procesador ordena a los diferentes dispositivos qué operaciones deben realizar.
Esta unidad es el componente del procesador que actúa como su cerebro, porque genera las instrucciones para casi todas las operaciones y garantiza que las mismas se ejecuten correctamente.
Ejemplos de dispositivos que utilizan unidades de control son la unidad central de procesamiento (CPU) y la unidad de procesamiento de gráficos (GPU).
Índice del artículo
Componentes
Para ejecutar una acción, la unidad de control de la CPU debe producir la señal de control necesaria en la secuencia adecuada. Hay dos enfoques que se utilizan para generar estas señales de control en la secuencia correcta.
Unidad integrada
La unidad de control está constituida por compuertas lógicas, flip-flops, circuitos digitales, codificadores y decodificadores, que se encuentran cableados de una forma ya establecida.
Se puede considerar como un aparato de estados, que varía de un estado a otro en cada ciclo de reloj, dependiendo del contenido del registro de instrucciones y las entradas externas.
La salida de este aparato de estados son las señales de control. La secuencia de las operaciones realizadas por esta máquina está determinada por el cableado de los elementos lógicos. Por esta razón se denomina “integrada”.
El diseño está basado en una arquitectura específica. Cuando se requieran cambios en el conjunto de instrucciones, se deben realizar cambios en el cableado y el circuito.
Esta es la base para la arquitectura de cómputo de un conjunto reducido de instrucciones (RISC), que solo tiene un pequeño número de instrucciones.
Señales de control
Las señales de control son fundamentales para dirigir la ejecución de las operaciones. Son difundidas por circuitos lógicos expresamente diseñados, en los que no se puede modificar el método de generación de las señales sin un cambio físico de la estructura del circuito.
Las señales de control para efectuar una operación deben difundirse no en un único punto en el tiempo, sino durante todo el período de tiempo correspondiente al ciclo de ejecución de la instrucción.
El código de operación de una instrucción incluye la información básica para difundir la señal de control.
Decodificador de instrucciones
El código de operación se decodifica en el decodificador de instrucciones. Este está constituido por un conjunto de decodificadores que decodifican los diferentes campos del código de operación de la instrucción.
El decodificador de instrucciones consiente que la unidad de control ingrese al primer estado vinculado con la ejecución de la nueva operación, el cual dura tanto tiempo como permanezcan sin alterarse las señales de temporización y otras señales de entrada.
Un cambio de cualquiera de las señales mencionadas incita que cambie el estado de la unidad de control.
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.
Unidad microprogramada
La diferencia esencial de este enfoque con respecto a la unidad integrada es la existencia de un almacén de control, que se utiliza para almacenar los microprogramas que incluyen las señales de control codificadas imprescindibles para la ejecución de una operación.
No se va a decodificar el código de operación de la instrucción para crear en seguida una señal de control, sino que se indicará la dirección de un microprograma que está almacenado en el almacén de control.
Es decir, las señales de control adjuntadas con las instrucciones están almacenadas en celdas especiales de memoria como microprogramas reemplazables.
La unidad de control microprogramada es más lenta que la unidad integrada debido al tiempo que tarda restaurar las operaciones que se encuentran en la unidad de memoria.
Funciones
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.
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.
Ilustración
Las funciones que realiza una unidad de control van a estar supeditadas al tipo de CPU, debido a las disparidades existentes de la estructura entre las diferentes marcas. El siguiente diagrama ilustra cómo se procesan las instrucciones de un programa.
– Maneja múltiples tareas, tales como la búsqueda y recuperación de instrucciones, decodificación, manejo de la ejecución y almacenamiento de los resultados.
– Recibe las instrucciones o comandos externos a los que convierte en una secuencia de señales de control.
– Interpreta las instrucciones.
– Controla la ejecución secuencial de las instrucciones.
– Coordina la secuencia de movimientos de los datos dentro, fuera y entre las muchas subunidades del procesador.
– Regula y controla la sincronización de las unidades de ejecución, tales como la unidad lógico aritmética, y los almacenes y registros de datos contenidos en el procesador.
– Envía y recibe las señales de control a otros dispositivos informáticos.
– Dirige y controla el flujo de datos a través de las diferentes áreas de la computadora.
Referencias
- Techopedia (2019). Control Unit (CU). Tomado de: techopedia.com.
- Computer Hope (2017). Control unit. Tomado de: computerhope.com.
- Geeks for Geeks (2019). Computer Organization: Hardwired v/s Micro-programmed Control Unit. Tomado de: geeksforgeeks.org.
- Geeks for Geeks (2019). Introduction of Control Unit and its Design. Tomado de: geeksforgeeks.org.
- Wikipedia, the free encyclopedia (2019). Control unit. Tomado de: en.wikipedia.org.