CPU
La CPU
- ALU: Arithmetic and logical unit. Se encarga de realizar las operaciones aritméticas y lógicas con los datos
- Banco de registros: Proporciona un espacio de almacenamiento para los datos con los que trabaja la CPU. Podemos distinguir estos registros entre:
- Registros de datos. Guardan información con la que se trabaja.
- Registros de direcciones. Guardan direcciones de memoria en las que puede haber datos.
- Registros de control. Controlan el estado de la CPU
- Unidad de Control: Se encarga de leer las instrucciones almacenadas en memoria principal y de generar las señales de control para controlar y coordinar el resto de las unidades, con el fin de ejecutar las instrucciones leídas. PARTES FUNDAMENTALES:
- Contador de programa. Apunta la dirección de memoria de la próxima instrucción a ejecutar.
- Registro de instrucción. Guarda la instrucción que se esta ejecutando.
- Reloj. Genera una señal de sincronía.
- Secuenciador. Ordena las diferentes unidades funcionales.
Tenemos dos tipos de Unidades de Control:
- Cableada. La lógica de las operaciones está implementada mediante hardware.
- Microprogramada. Se trata de una pequeña CPU en miniatura que puede programarse para realizar diferentes tareas. Son más flexibles pero más lentas.
CPU. Optimizaciones
- Ejecución fuera de orden (Out of order execution). Inspecciona el flujo de ordenes para reorganizarlo de manera que sea más rápido.
- Predicción de saltos (Branch prediction). Es una lógica de la CPU que mira todos los saltos del flujo de ordenes, intenta predecir y cargar las instrucciones después del salto.