Monociclo

Solo disponible en BuenasTareas
  • Páginas : 10 (2325 palabras )
  • Descarga(s) : 0
  • Publicado : 10 de febrero de 2012
Leer documento completo
Vista previa del texto
Resumen de la Ruta de Datos
Camino de datos con todos los multiplexores y líneas de control necesarias (según figura del libro de texto).
PCSrc 0 M u x 1

Diseño del control monociclo para la arquitectura MIPS

Add 4 RegWrite Instruction [25– 21] PC Read address Instruction [31– 0] Instruction memory Instruction [20– 16] 0 M u Instruction [15– 11] x 1 RegDst Instruction [15– 0] Readregister 1 Read register 2 Shift left 2 Add ALU result

Read data 1

MemWrite ALUSrc 0 M u x 1 Zero ALU ALU result MemtoReg Address Read data 1 M u x 0

Read Write data 2 register Write Registers data 16 Sign 32 extend

Data Write data memory MemRead

ALU control

Instruction [5– 0] ALUOp

Diseño del control monociclo

Diseño del control monociclo

2

Recordatorio (I)
La organizacióndel procesador condiciona el Tcpu
5 pasos en el diseño del procesador • 1. Analizar repertorio de instrucciones Funcionalidad del camino de datos • 2. Seleccionar componentes del camino de datos • 3. Ensamblar camino de datos para proporcionar la funcionalidad requerida. • 4. Analizar la implementación de cada instrucción para determinar la ubicación de los puntos de control que permitanejecutar las transferencias entre registros. • 5. Diseño de la unidad de control (a continuación ...)

Recordatorio (II)
MIPS hace fácil la implementación de estos pasos • Instrucciones del mismo tamaño • Registro fuente (rs) siempre en la misma posición del formato de instrucción • Valores inmediatos siempre del mismo tamaño (16 bits) y en la misma posición (bits 0-15) • Operaciones siempre sobreregistros/inmediatos Camino de datos monociclo CPI=1 TCLK grande A continuación: Paso 5 (diseño de la unidad de control)

Diseño del control monociclo

3

Diseño del control monociclo

4

Diseño de la unidad de control: visión completa de la implementación
Camino de datos con la unidad principal de control y la unidad local de control de la ALU
0 M u x ALU Add result Add 4 Instruction[31 26] RegDst Branch MemRead MemtoReg Control ALUOp MemWrite ALUSrc RegW rite Read register 1 0 M u x 1 Shift left 2 1 PCSrc

La Unidad Aritmética y Lógica (ALU)
Operaciones básicas (solo usaremos 5 de las 8 posibles)
Binvert Operation CarryIn a

A L U o p e r a ti o n

a Z ero ALU b
Less

0 1 Result

R e s u lt O v e r f lo w

b

0 1

2

PC

Read address Instruction [31–0]Instruction memory

Instruction [25 21] Instruction [20 16]

3

Read register 2 Registers Read Write data2 register Write data

Read data1 0 M u x 1 32 ALU control

C a rry O u t
Zero ALU ALU result Read data Data memory

a.

Address

Instruction [15 11]

W rite data

1 M u x 0

Entradas de control (ALUctr)
000 001 010 110 111

CarryOut

FUNCIÓN
AND OR ADD SUB SLTInstruction [15 0]

16

Sign extend

Instruction [5 0]

Diseño del control monociclo

5

Diseño del control monociclo

6

Control de la ALU
Operaciones a realizar según la instrucción: • Load (lw) y store (sw): Suma • Salto (beq): Resta • Aritméticas (tipo R: add,sub, or,and y slt): Definida por el campo “Funct” Dependencias de las señales de control
Cod. Op. LW SW Branch EqualR-Type R-Type R-Type R-Type R-Type ALUop 00 00 01 10 10 10 10 10 Instrucción Carga Almacena salto suma resta AND OR set on less than FUNCT XXXXXX XXXXXX XXXXXX 100000 100010 100100 100101 101010 Op. deseada suma suma resta suma resta and or set on less than Entradas de control de la ALU (ALUctr) 010 010 110 010 110 000 001 111

Control local de la ALU: Tabla de verdad
ALUop ALUop1 ALUop0 0 0 x 1 1x 1 x 1 x 1 x 1 x F5 x x x x x x x F4 x x x x x x x funct F3 F2 x x x x 0 0 0 0 0 1 0 1 1 0 F1 x x 0 1 0 0 1 F0 x x 0 0 0 1 0 bit2 0 1 0 1 0 0 1 ALUctr bit1 bit0 1 0 1 0 1 0 1 0 0 0 0 1 1 1

31

Instrucción Tipo R:

26 op 6 bits

21 rs 5 bits

16 rt 5 bits ALUctr 3

11 rd 5 bits

6 shamt 5 bits funct 6 bits

0

op 6

Main Control

func 6 ALUop N

ALU Control (Local)...
tracking img