El procesador Diseño del control
Datapath MIPS simple Universidad de Sonora Arquitectura de Computadoras
MIPS simple El datapath anterior cubre instrucciones: Aritméticas-lógicas: add, sub, and, or y set on less than. Acceso a memoria: load word (lw) y store word (sw). Brincos: beq. La instrucción jump (j) se incluirá después. Universidad de Sonora Arquitectura de Computadoras
Control de la ALU La ALU se usa según el tipo de instrucción: Instrucciones de tipo “R”: para su operación. Instrucciones lw y sw: suma. Instrucción beq: resta. Universidad de Sonora Arquitectura de Computadoras
Control de la ALU Unidad de control de la ALU: Entradas: opcode y una señal de control de dos bits llamada ALUOp. Salida: señal de control de 4 bits de la ALU. Universidad de Sonora Arquitectura de Computadoras
Control de la ALU Universidad de Sonora Arquitectura de Computadoras
Unidad de control principal Tomando en cuenta los formatos de cada clase de instrucción, se agregan 7 señales de control: Universidad de Sonora Arquitectura de Computadoras
Unidad de control principal RegDst. Controla el origen de la dirección del registro destino: bits[20:16] para lw o bits[15:11] para tipo-R. RegWrite. Controla la escritura en el banco de registros. ALUSrc. Controla el origen del segundo operando de la ALU: registro para tipo-R u offset para lw/sw. PCSrc. Controla que se guarda en el PC: PC + 4 o PC + offset. Universidad de Sonora Arquitectura de Computadoras
Unidad de control principal MemRead. Controla la lectura en la memoria de datos. MemWrite. Controla la escritura en la memoria de datos. MemtoReg. Controla el origen del dato a guardar en el registro destino: ALU para tipo-R o la memoria de datos para sw. Universidad de Sonora Arquitectura de Computadoras
Unidad de control principal Universidad de Sonora Arquitectura de Computadoras
Unidad de control principal Universidad de Sonora Arquitectura de Computadoras
Unidad de control principal Entrada: opcode de la instrucción bits[31:26]. Salidas: 3 señales de un bit para controlar multiplexores: RegDst, ALUSrc y MemtoReg. 3 señales de un bit para controlar lecturas y escrituras en el banco de registros y la memoria de datos: RegWrite, MemRead y MemWrite. 1 señal de un bit para indicar un posible brinco: Branch. 1 señal de dos bits para controlar la ALU: ALUOp. Universidad de Sonora Arquitectura de Computadoras
Unidad de control principal ¿Dónde quedó PCSrc? Ahora es una señal de control derivada de la señal de control Branch y la salida Zero de la ALU. Universidad de Sonora Arquitectura de Computadoras
Unidad de control principal Universidad de Sonora Arquitectura de Computadoras
Líneas de control El opcode de la instrucción determina los valores de las líneas de control. Universidad de Sonora Arquitectura de Computadoras
Líneas de control Para las instrucciones tipo-R. RegDst = 1. La dirección del registro destino está en los bits[15:11]. ALUSrc = 0. El segundo operando de la ALU es un registro. MemtoReg = 0. En el registro destino se guarda la salida de la ALU. RegWrite = 1. La instrucción escribe en el banco de registros. Universidad de Sonora Arquitectura de Computadoras
Líneas de control MemRead = 0. La instrucción no usa la memoria de datos. MemWrite = 0. La instrucción no usa la memoria de datos. Branch = 0. La siguiente instrucción está en PC+4. ALUOp = 10. La función ejecutada por la ALU depende de la instrucción. Universidad de Sonora Arquitectura de Computadoras
Implementación Tabla de verdad de la unidad de control: Universidad de Sonora Arquitectura de Computadoras
Implementación Universidad de Sonora Arquitectura de Computadoras
Instrucción Jump Formato de la instrucción j: Universidad de Sonora Arquitectura de Computadoras
Instrucción jump Se guarda en el PC la concatenación de: Los bits[31:28] del PC actual. Los 26 bits de la dirección. Los bits 00 (para convertir de palabra a byte). Se necesita otra señal de control para distinguir entre no brinco, beq y jump. La señal de control jump solo se activa cuando el opcode es 2. Universidad de Sonora Arquitectura de Computadoras
Unidad de control final Universidad de Sonora Arquitectura de Computadoras