Describir el camino de datos para instrucciones de formato J

De Wikitronica
Saltar a: navegación, buscar

Las instrucciones de salto incondicional (J-Instructions) como su nombre lo indica, se trata de instrucciones de saltos entre secciones del código mediante el uso de etiquetas, generalmente se utilizan para realizar tareas especificas dentro del programa ( simulando funciones como en otros lenguajes de programación). En el lenguaje Assembly de MIPS se pueden observar dos instrucciones de formato J:

  • j X : Realiza un salto incondicional a la dirección o etiqueta X.
  • jal X : Guarda la dirección de PC en un registro y realiza un salto a la dirección o etiqueta X.


En la arquitectura MIPS de un solo ciclo estas instrucciones son ejecutadas como se muestra a continuación:

Al ser recibida la señal de salto incondicional en el modulo NEXTPC (J=1) automaticamente se selecciona la segunda entrada del demultiplexor 2a1 que posee la CONCATENACIÓN de los cuatro (4) bist más significativos del PC actual y los veinti seis (26) bits de la dirección inmediata del destino de la función, este dato de treinta (30) bits es conocido como el Jump Target Address que posteriormente será utilizado como PC. Adicionalmente se coloca en uno (1) al resgistro PCSrc.


[[Image:NextPc(structure).png|thumb|center|400px|Módulo Next PC]Estructura interna del bloque NEXT PC]


Al estar el registro PCSrc en activo (PCSrc =1) se utiliza la segunda entrada del multiplexor 2a1 que hace pasar el Jump Target Address al registrp PC, de otra manera el proximo PC será PC+4.

CAMINO DE DATOS INSTRUCCION J

En la instruccion J:

- No se escribe ni lee en ninguna direccion de memoria
- No se modifican registros.
- Es indiferente el valor de los registros RegDst, ExtOp, ALUSrc, ALUCtrl, and MemtoReg