Unidad de Control

Unidades de control cableadas vs microprogramadas—el cerebro que orquesta la CPU.

La unidad de control es el director de la orquesta de la CPU. Lee la instrucción actual del registro de instrucción, decodifica el código de operación y genera la secuencia de señales de control que dirigen los datos a través de la ALU, los registros y la memoria. Hay dos enfoques principales: control cableado (rápido, construido con lógica combinacional) y control microprogramado (flexible, usando una tabla de consulta en ROM).

Objectives

  • Explicar el papel de la unidad de control en la ruta de datos de la CPU
  • Enumerar las señales de control para una CPU simple (operación ALU, escritura de registro, lectura/escritura de memoria, selecciones de MUX)
  • Diseñar una unidad de control cableada usando lógica combinacional
  • Diseñar una unidad de control microprogramada usando una ROM de control
  • Comparar los enfoques cableado vs microprogramado

Key Takeaways

  • La unidad de control genera señales que dirigen el flujo de datos a través de la CPU
  • Cableado: lógica combinacional desde el código de operación → rápido pero inflexible
  • Microprogramado: secuencias almacenadas en ROM → flexible pero más lento
  • Cada instrucción requiere un conjunto específico de valores de señales de control
  • Las CPUs RISC favorecen el cableado; las CPUs CISC complejas usan microprogramación

Applications

  • Control RISC-V: Control cableado simple para la ISA RISC-V de código abierto.
  • Microcódigo x86: Las CPUs Intel/AMD usan microcódigo para implementar instrucciones x86 complejas.
  • Actualizaciones de Microcódigo: Los parches de firmware de CPU pueden corregir errores actualizando la ROM de microcódigo.
  • Emulación de CPU: El control microprogramado permite que una CPU emule la ISA de otra.

Practice Problems

Problem 1: Para una instrucción ADD R1, R2, R3, ¿qué señales de control se necesitan?

Problem 2: LOAD R1, [R2] necesita ¿cuántos ciclos en una CPU multi-ciclo?

Problem 3: ¿Por qué el control cableado es más rápido que el microprogramado?

Problem 4: Una CPU tiene 32 señales de control. ¿Qué ancho tiene cada palabra de microinstrucción en microprogramación horizontal?