La unidad central de proceso

La unidad central de proceso (UCP) o CPU, por sus siglas en inglés es la encargada de ejecutar las instrucciones de una aplicación, es la unidad que gobierna al resto del equipo. Se suele identificar por error a la CPU con la torre del ordenador, pero realmente la CPU es sólo uno entre los varios dispositivos que se encuentran en la torre. Hoy en día, con CPU nos referimos al microprocesador. Antes de que los microprocesadores se inventaran, en los equipos informáticos que había, la CPU estaba hecha de transistores y circuitos integrados. Funcionalmente está compuesta de otros tres elementos:

  • Unidad aritmético-lógica.
  • Unidad de control.
  • Registros

Vemos, a continuación, de forma esquemática como se relacionan estos componentes. Los buses representados en el dibujo no son exclusivos de la CPU, sino que comunican todo el sistema. Además, es necesario hablar del reloj de sistema.

Esquema lógico de la unidad central de proceso

Esquema lógico de la unidad central de proceso

La unidad de control

La unidad de control es el elemento más complejo del sistema. Tiene dos componentes que marcan sus dos fases de trabajo con cada instrucción: el decodificador y el secuenciador.

La próxima instrucción que se va a ejecutar se lleva al Registro de Instrucción (R.I.). El decodificador leerá la instrucción y la decodifica, de modo que identifica qué tipo de instrucción se trata de entre las distintas que se pueden ejecutar. Identifica también los operandos de la instrucción.

El secuenciador, una vez decodificada la instrucción, activa las señales de control necesarias (por medio del bus de control) para que el resto de componentes del sistema trabajen de forma coordinada para llevar a cabo la ejecución de la instrucción. Se puede decir que el secuenciador, y por extensión la unidad de control, gobierna el resto de componentes, convirtiéndose en el cerebro del sistema.

La unidad aritmético-lógica

La unidad aritmético-lógica, ALU por sus siglas en inglés, tiene implementadas en sus circuitos las operaciones aritméticas y lógicas básicas. El secuenciador activa una señal (por el bus de control) que le indica la operación a realizar y los operandos son recogidos de los registros de entrada (Oper 1 y Oper 2 en el esquema). La solución llega al registro acumulador para después guardarla donde sea preciso. La ALU actúa como una simple calculadora a la que le dan dos datos y le indican una operación y obtiene automáticamente un resultado.

En los ordenadores actuales la ALU sólo realiza las operaciones más básicas y necesita de la presencia de otro dispositivo, como el coprocesador matemático, para la realización de operaciones más complejas.

Los registros

Los registros proporcionan espacio de almacenamiento muy pequeño pero de gran velocidad. Son imprescindibles para el buen funcionamiento del sistema y sólo almacena un pequeño número de bits potencia de 2 (8, 16,…, hasta 128 bits).

Existen dos tipos de registros:

  • Los de propósito general: en el esquema son los que aparecen etiquetados como “Banco de registros”. Son utilizados por las aplicaciones para guardar resultados parciales o datos temporales, es decir, un lugar donde ir guardando datos que se están utilizando en ese instante en las operaciones.
  • Los de propósito específico: son registros con funciones definidas. Aunque hay muchos, sólo comentaremos 3 que son importantes para entender cómo funciona la CPU:
    • Registro de instrucción (R.I.): es un registro donde se almacena de forma temporal la instrucción que se va a ejecutar para que pueda ser decodificada.
    • Contador de Programa (C.P.): este registro guarda direcciones de memoria. Concretamente, guarda la dirección de memoria donde está la siguiente instrucción que va a pasar al decodificador. Como las instrucciones estarán ordenadas en memoria, este registro se encarga de llevar la cuenta de que instrucción es la siguiente.
    • Acumulador: como ya hemos comentado guarda de manera temporal el resultado obtenido en una operación antes de ser guardado en su lugar correspondiente.

El reloj del sistema

Para que todos los elementos estén coordinados, las señales de control se han de enviar en el orden y en tiempo adecuados. Es por ello que se necesita una señal de reloj externa que llegue a todos los elementos y que permita la sincronización entre todos ellos. La señal de reloj no es más que una sucesión de impulsos eléctricos a intervalos de tiempo constantes (ciclos). En cada ciclo de este reloj cada componente realizará su función y pasará a la siguiente en otro nuevo ciclo, de modo que en cada ciclo comienza la ejecución de una nueva instrucción.

Los ciclos de este reloj vendrán dados por una frecuencia. La frecuencia es una magnitud que mide el número de repeticiones por unidad de tiempo, en este caso, el número de ciclos por segundo. Se mide en hercios (Hz), de modo que 1 hercio es un ciclo por segundo y 5 hercios, 5 ciclos por segundo. Las CPUs de los ordenadores personales actuales trabajan a frecuencias de entre 1 y 4 gigahercios (GHz), lo que significa que tienen una frecuencia de trabajo de más de 1.000 millones de ciclos por segundo. Durante mucho tiempo se ha relacionado directamente el rendimiento de la CPU con su frecuencia de trabajo, aunque en los últimos años su rendimiento ha seguido mejorando sin apenas aumentos de frecuencia.

Deja un comentario