Story Transcript
Arquitectura MIPS: Formato de la instrucción máquina • La ruta de datos la diseñaremos para un subconjunto de instrucciones del procesador MIPS MIPS, que dispone de sólo 3 formatos de diferentes de longitud fija de 32 bits: p R: • Tipo Aritmético-lógicas • Tipo I: Referencia a memoria Aritméticas (inmediato) Salto condicional • Tipo J: Salto incondicional
31
26 op
rs
6 bits 31
21
op
5 bits
11 rd
5 bits 21
rs
6 bits 31
rt
5 bits 26
16 5 bits
6 bits
desp 5 bits
16
0 funct 6 bits 0
inmediato
rt 5 bits
16 bits
26 op
6
0 dirección 26 bits
• El significado de los campos es el siguiente: op: código de operación (identificador de cada instrucción) rs, rt, rd: identificadores de los registros fuentes y destino de las operaciones desp: cantidad a desplazar en operaciones de desplazamiento funct: identificador de la operación aritmética a realizar inmediato: operando inmediato, o desplazamiento en direccionamiento base+desplazamiento dirección: dirección destino del salto 1 ESTRUCTURA DE COMPUTADORES. GRADO EN INGENIERIA DEL SOFTWARE
Arquitectura MIPS: Semántica de las instrucciones seleccionadas • Instrucciones de referencia a memoria (formato tipo I): lw rt, inmed(rs) sw rt, inmed(rs)
rt Memoria( rs + SignExt( inmed ) ) , PC PC + 4 Memoria( rs + SignExt( inmed ) ) rt , PC PC + 4
• Instrucciones aritmético-lógicas con operandos en registros (formato tipo R)
rd rs + rt, PC PC + 4 rd rs - rt , PC PC + 4 rd rs and rt , PC PC + 4 rd rs or rt , PC PC + 4 ( si ( rs < rt ) entonces ( rd 1 ) en otro caso ( rd 0 ) ), PC PC+4
add rd, rs, rt sub rd, rs, rt and rd, rs, rt or rd, rs, rt slt rd, rs, rt
• Instrucciones de salto condicional (formato tipo I) beq b rs, rt, inmed i d
sii ( rs = rt ) entonces ( PC C PC C + 4 + 4·SignExt( 4 Si ( inmed i d)) caso contrario PC PC + 4
2 ESTRUCTURA DE COMPUTADORES. GRADO EN INGENIERIA DEL SOFTWARE
Diseño de la ruta de datos monociclo (1)
PCWrite
• Componentes de la ruta de datos (1): 32 PC
Contador de programa 2 Sumadores: S d o El primero para sumar 4 al PC o El segundo para sumar al PC el valor inmediato de salto.
32 32
+ 32 ALUctr
111
función A and B A or B A+B A–B 1 si (A