La siguiente tabla describe las señales de control generadas por la unidad de control para cada microinstrucción en una arquitectura de computador específica. Cada fila representa una microinstrucción, y cada columna representa una señal de control.
Descripción de las Señales de Control
- BNZ: Branch if Not Zero (Salto si no es cero)
- BZ: Branch if Zero (Salto si es cero)
- WrMem: Escritura en memoria
- RdIn: Lectura de entrada
- WrOut: Escritura de salida
- WrD: Escritura en registro de datos
- LdIR: Carga en registro de instrucción
- Byte: Operación de byte
- R@/PC: Selección de registro o contador de programa
- Alu/r@: Selección de ALU o registro
- Pc/Rx: Selección de contador de programa o registro X
- Ry/N: Selección de registro Y o negación
- PILA (2 columnas): Operaciones de pila
- OP (2 columnas): Operación
- MxN (2 columnas): Multiplexor N
- MxF (3 columnas): Multiplexor F
- MxD (2 columnas): Multiplexor D
Tabla de Microinstrucciones
| Microinstrucción | BNZ | BZ | WrMem | RdIn | WrOut | WrD | LdIR | Byte | R@/PC | Alu/r@ | Pc/Rx | Ry/N | PILA | PILA | OP | OP | MxN | MxN | MxF | MxF | MxF | MxF | MxD | MxD |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| F (Fetch) | 1 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 1 | 0 | X | X | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0 | X | X |
| D (Decode) | 0 | 0 | 0 | 0 | 0 | 0 | 0 | X | X | X | 1 | 0 | X | X | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0 | X | X |
| AL | 0 | 0 | 0 | 0 | 0 | 1 | X | X | X | X | 0 | 1 | 0 | 0 | 0 | 0 | X | X | 0 | X | X | X | 0 | 0 |
| CMP | 0 | 0 | 0 | 0 | 0 | 1 | X | X | X | X | 0 | 1 | 0 | 0 | 0 | 1 | X | X | 0 | X | X | X | 0 | 0 |
| ADDI | 0 | 0 | 0 | 0 | 0 | 1 | X | X | X | X | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 1 |
| ADDR | 0 | 0 | 0 | 0 | 0 | 0 | 0 | X | X | X | 0 | 0 | X | X | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | X | X |
| LD | 0 | 0 | 0 | 0 | 0 | 1 | X | 0 | 1 | X | X | X | 0 | 1 | X | X | X | X | X | X | X | X | 0 | 1 |
| ST | 0 | 0 | 1 | 0 | 0 | 0 | X | 0 | 1 | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X |
| LDB | 0 | 0 | 0 | 0 | 0 | 1 | X | 1 | 1 | X | X | X | 0 | 1 | X | X | X | X | X | X | X | X | 0 | 1 |
| STB | 0 | 0 | 1 | 0 | 0 | 0 | X | 1 | 1 | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X |
| JALR | 1 | 1 | 0 | 0 | 0 | 1 | X | X | X | 1 | 0 | X | 1 | 1 | 1 | 0 | X | X | 1 | 0 | 0 | 0 | 0 | 1 |
| BZ | 0 | 1 | 0 | 0 | 0 | 0 | X | X | X | 0 | 0 | X | X | X | 1 | 0 | X | X | 1 | 0 | 0 | 0 | X | X |
| BNZ | 1 | 0 | 0 | 0 | 0 | 0 | X | X | X | 0 | 0 | X | X | X | 1 | 0 | X | X | 1 | 0 | 0 | 0 | X | X |
| MOVI | 0 | 0 | 0 | 0 | 0 | 1 | X | X | X | X | X | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 1 | 1 | X |
| MOVHI | 0 | 0 | 0 | 0 | 0 | 1 | X | X | X | X | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 1 | X |
| IN | 0 | 0 | 0 | 1 | 0 | 1 | X | X | X | X | X | X | 1 | 0 | X | X | X | X | X | X | X | X | 1 | X |
| OUT | 0 | 0 | 0 | 0 | 1 | 0 | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X |
Consideraciones Adicionales
- Las señales marcadas con ‘X’ indican que el valor de la señal es irrelevante para esa microinstrucción.
- Esta tabla es una representación simplificada y puede variar según la arquitectura específica del computador.
- El conocimiento de estas señales de control es fundamental para el diseño y la comprensión de la unidad de control de un procesador.
