Sto cercando di implementare il supporto di istruzioni jr (jump register) a un processore MIPS a ciclo singolo. Nell'immagine seguente, ho disegnato un semplice mux che consente di selezionare tra il normale PC della catena o l'indirizzo di istruzioni (jr).Implementazione del controllo del registro di salto su MIPS a ciclo singolo
Come faccio a sapere che l'istruzione è JR per impostare la selezione mux a '1'? Ho già fatto jump e jump_and_link (anche se l'immagine non lo mostra, visto che non ho il mio progetto in mano in questo momento), e per controllarli, ho solo controllato se il codice OP è 10 (salto) o 11 (jal) nel controllo principale e quindi impostare il sel mux su '1'. Ma penso che non posso fare lo stesso con jr, dato che il layout delle istruzioni è distinto.
Non so quanto questo ti aiuterà ma: 'jr $ ra' salta alla posizione salvata nel registro dell'indirizzo di ritorno. – wazy
Sì, e sto recuperando la "posizione salvata" dal registro delle istruzioni. Ma il problema è come controllare quando impostare il PC su quest'ultima posizione o sul PC predefinito + 4 .. – user2509740
Quindi dove saltare? – wazy