Funcionamiento de la CPU: Arquitectura, Memoria y Ciclos de Instrucción

Clasificado en Informática

Escrito el en español con un tamaño de 3,48 KB

Arquitectura y Memoria de la CPU

Las áreas de memoria que utiliza la CPU son fundamentales para realizar sus tareas. Los registros se emplean en la ejecución de instrucciones y en la carga de datos e instrucciones desde la memoria.

Conjunto de instrucciones

Cada procesador dispone de una lista específica de instrucciones que puede ejecutar. Estas deben realizar, como mínimo, los siguientes tipos de tareas:

  • Movimiento de datos: Sirven para mover datos e instrucciones desde la memoria o entre registros.
  • Control: Para gestionar las operaciones y el estado de la CPU.
  • Aritmética y lógica: Sumas, comparaciones, operaciones con bits, etc.
  • Entrada/salida: Comunicación desde y hacia los periféricos.
  • Instrucciones numéricas de “coma flotante”: Cálculos con decimales, gráficos, etc.

Memoria Caché

Son pequeñas áreas de memoria dentro de la CPU, de acceso muy rápido, para leer y escribir datos e instrucciones de uso frecuente.

1. Lectura

  1. Primero se busca en la caché, por orden de nivel: de 1 a 3.
  2. Si no está (fallo de caché), se busca el dato en la memoria principal.
  3. El dato leído se almacena en la caché.

2. Escritura

Cuando se escribe un dato en la memoria, se escribe también en la caché mediante dos modos:

  • Writeback: Más rápido, se escribe en la memoria y más tarde en la caché.
  • Writethrough: Se escribe simultáneamente en la memoria y en la caché.

Métricas de Rendimiento

  • Ciclos de reloj por instrucción: Número de ciclos de reloj necesarios para realizar una operación.
  • Latencia: Tiempo (en nanosegundos) que tarda un sistema en responder hasta que se inicia una operación.
  • Respuesta en el peor caso (Sistemas en tiempo real): Garantía del máximo tiempo de espera para sistemas críticos.
  • Ancho de banda: Medida de la transferencia de datos, expresada en bits por segundo (bit/s, kbit/s, Mbit/s, Gbit/s, etc.).
  • Rendimiento por vatio: Capacidad de proceso por vatio consumido.

Operación y Ejecución

Un programa es una serie de instrucciones ejecutables por la CPU.

Resumen del ciclo de instrucción

  1. Fetch instrucción: Se lee la instrucción de la memoria.
  2. Decode: Se decodifica la instrucción y se guarda en los registros.
  3. Fetch datos: Se cargan los datos necesarios para procesar la instrucción desde la memoria.
  4. Execute: Se procesa la instrucción y se guarda el resultado en los registros.
  5. Writeback: Se escriben los resultados en la memoria.

El proceso se repite con el siguiente ciclo, normalmente leyendo la siguiente instrucción indicada por el contador de programa.

Conceptos avanzados

  • Pipelines (tuberías): Técnica donde múltiples instrucciones pueden ser leídas, decodificadas y ejecutadas simultáneamente.
  • Hilo: Ejecución secuencial de instrucciones.
  • Proceso: Es un programa en ejecución. Un programa puede tener varios hilos dependientes (subprocesos).

Entradas relacionadas: